mysqli_fetch_array()我看到和之间的比较mysqli_fetch_all()表明,mysqli_fetch_all()它将占用更多内存,并且我将不得不迭代数组。
mysqli_fetch_all()是一次调用mysqli,但是mysqli_fetch_array()每行一次调用,例如 100 次调用。
我不知道 mysqli 处理是如何工作的:mysqli_fetch_array()当您还考虑调用次数时,调用真的更有效吗?
(我已经明白返回的数据可以是关联数组,也可以不是)
我使用
fetch_allvswhile/fetch_arrayand 进行了测试:
fetch_all使用更少的内存(但不是那么多)。就我而言(test1 和 test2):147008,262848 字节 (
fetch_all) 与 147112,262888 字节 (fetch_array&while)。所以,关于内存,两种情况都是一样的。
不过,关于性能:
我的测试需要:使用 350 毫秒(最坏情况)
fetch_all,而使用464 毫秒(最坏情况)fetch_array,或者大约35% 最差情况使用fetch_array和一个while周期。因此,对于返回适量信息的普通代码,使用, 是:
fetch_allA。更干净(一行代码)
b.使用更少的内存(大约减少 0.01%)
c. 快点。PHP 5.6 32位,Windows 8.1 64位