PDO :: FETCH_ASSOC不返回正确的表列
问题描述:
我是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
答
还有一个开放的错误与Zend框架1.x中,PHP 5.3.x和调用setFetchMode(),这就是为什么如预期它不工作的原因。
看到http://framework.zend.com/issues/browse/ZF-10866和http://framework.zend.com/issues/browse/ZF-3470
请投票关闭此错误或提交补丁。