Zend framework Zend_Db_Adapter_Mysqli::fetchAssoc()我不希望主键作为数组索引!

Zend framework Zend_Db_Adapter_Mysqli::fetchAssoc()我不希望主键作为数组索引!,zend-framework,Zend Framework,根据ZF文档,使用fetchAssoc时,结果集中的第一列必须包含唯一的值,否则第一列中具有重复值的行将覆盖以前的数据 我不希望这样,我希望我的数组被索引为0,1,2,3。。。我不需要行是唯一的,因为我不会修改它们,也不会将它们保存回数据库。From fetchAssoc方法返回关联数组中的数据,无论您为fetch模式设置了什么值,**使用第一列作为数组索引** 所以如果你把 $result=$db->fetchAssoc '从表中选择某个\u列,另一个\u列' ; 您将得到这样一个数组

根据ZF文档,使用fetchAssoc时,结果集中的第一列必须包含唯一的值,否则第一列中具有重复值的行将覆盖以前的数据

我不希望这样,我希望我的数组被索引为0,1,2,3。。。我不需要行是唯一的,因为我不会修改它们,也不会将它们保存回数据库。

From fetchAssoc方法返回关联数组中的数据,无论您为fetch模式设置了什么值,**使用第一列作为数组索引**

所以如果你把 $result=$db->fetchAssoc '从表中选择某个\u列,另一个\u列' ;

您将得到这样一个数组


$result['some_column']['other_column']

根据ZF文档,在使用默认的fetchAll模式时,fetch_ASSOC实际上等同于fetchAssoc。但事实并非如此。 我用打印功能来揭示真相

print_r($db->fetchAll('select col1, col2 from table'));
印刷品

Array
(
    [0] => Array
        (
            [col1] => 1
            [col2] => 2
        )
)
因此:

这就是我想要的。 ZF文档中有一个bug
如果文档中没有错误,您只是没有正确地解释它,那么他们可能会重新措辞,使事情完全清楚。fetchAll with FETCH_ASSOC不处理主数组的键,因此将返回所有行,而fetchAssoc使用查询中第一列的值作为主数组的索引。结果是$result[some_column_value]=['some_column'=>some_column_value',other_column'=>other_column_value];,正如我最近发现的那样。