PHP / MYSQLI:fetch_assoc()vs fetch_array(MYSQLI_ASSOC)

时间:2017-07-18 21:36:10

标签: php mysqli

$result->fetch_assoc()
之间是否存在任何差异? $result->fetch_array(MYSQLI_ASSOC)或者它们完全相同?

在提出这个问题之前我已经搜索了一下但是我发现的唯一事情(here)是没有参数的$result->fetch_array()允许数字和关联索引而在 $result->fetch_assoc()仅允许关联索引,因此最后一个索引具有更好的性能。

3 个答案:

答案 0 :(得分:0)

是,目的和返回的格式。

fetch_array()有更多输出格式。你可以在这里看到PHP Manual : mysqli_result::fetch_array

PHP Manual : mysqli_result::fetch_assoc()输出单一格式。

答案 1 :(得分:0)

当您需要访问关联索引和数字索引时,使用

fetch_array()。

当您只需要关联索引时,请使用fetch_assoc()。

Php.net docs说

  

将结果行提取为关联行,数字数组或两者

Php.net fetch_array() description

答案 2 :(得分:0)

您是否阅读了mysqli_result::fetch_assoc()mysqli_result::fetch_array()的文档?

最后一个解释了其论证的可能值:

  

<强> $与resultType

     

此可选参数是一个常量,指示应从当前行数据生成哪种类型的数组。此参数的可能值为常量MYSQLI_ASSOCMYSQLI_NUMMYSQLI_BOTH

     

通过使用MYSQLI_ASSOC常量,此函数的行为与mysqli_fetch_assoc()相同,而MYSQLI_NUM的行为与mysqli_fetch_row()函数相同。最终选项MYSQLI_BOTH将创建一个具有两者属性的单个数组。