当我从表中返回一行时,我通常使用以下方法来收集结果:
$info = $result->fetch_assoc(); 两者之间的区别是什么?
$info = $result->fetch_array();当只返回一行时,是否有理由使用一个而另一个,还是仅仅是个人偏好?
发布于 2015-01-08 19:29:35
fetch_array通过索引返回值。但是Fetch_assoc只返回这个值。
例如,fetch_array返回
[0] => 11
[id] => 11
[1] => 2014-12-29
[date] => 2014-12-29在这里,数组位置0包含11,这个位置名也是'id‘。
同样的事情,fetch_assoc将返回
[id] => 11
[date] => 2014-12-29意思就是只返回值。
发布于 2015-09-11 02:09:09
(PHP 5)来自:http://php.net/manual/en/mysqli-result.fetch-array.php
mysqli_result::fetch_array - mysqli_fetch_array --将结果行提取为关联数组、数字数组或两者兼有。
因此,fetch_array()和fetch_assoc()实际上可以是等价的调用。至于性能,我建议使用任何一个调用,这些调用会产生更易读的代码,并且只会在您明确地将调用确定为性能问题之后才考虑性能。更有可能的是,在你最不希望它们出现的地方,你会遇到更严重的性能问题。
发布于 2018-04-04 15:07:14
fetch_array将为您提供键/值对和索引,其中fetch_assoc只给您键/值对,而不给索引。例如:
//fetch_array output be like:
[name]=>'someName'
[0]=>'someName'
[email]=>'some@some.com'
[1]=>'some@some.com'
//fetch_assoc output be like
[name]=>'someName'
[email]=>'some@some.com'https://stackoverflow.com/questions/21361184
复制相似问题