2011-10-07 121 views
0

我是PHP新手,目前正在开发一个小型Web应用程序。下面是一个使用PDO为DB查询测试代码:PDO :: FETCH_ASSOC不返回正确的表列

上述代码的输出如下:

Array ([0] => Array ([id] => 1 [username] => admin [users] => Administrator [auction] => 0) 
     [1] => Array ([id] => 2 [username] => jodel [users] => Jodel Ross [auction] => 1)) 

我很困惑,因为从我的角度来看,上面的代码应该给出一个关联数组,其索引是返回结果集的列,即id,用户名,密码,名称,级别。但事实并非如此。

而且,如果我用PDO :: FETCH_NUM,字段和相应的数据正确数量的正确返回,如下所示:

Array ([0] => Array ([0] => 1 
         [1] => admin 
         [2] => 21232f297a57a5a743894a0e4a801fc3 
         [3] => Administrator 
         [4] => 0) 
     [1] => Array ([0] => 2 
         [1] => jodel_ross 
         [2] => 2cdaeb5df4cf941d9c5650591cba1fdc 
         [3] => Jodel Ross, Jr. 
         [4] => 1)) 

请帮帮忙,我需要了解为什么,我有在网络上搜索找到答案并没有找到任何答案。 谢谢。

Development environment: 
Windows 7 x64 
PHP 5.3.6 
Mysql 5.5 
Apache 2.0.64 
Zend Framework 1.11 

回答