Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将整个MySQL表放入PHP数组与逐行读取_Php_Mysql - Fatal编程技术网

将整个MySQL表放入PHP数组与逐行读取

将整个MySQL表放入PHP数组与逐行读取,php,mysql,Php,Mysql,与逐行读取和处理表相比,将多达10000行的表读取到PHP数组中有什么缺点?假设您的数据没有耗尽所有内存,我认为使用数组没有任何意义。当您向服务器发送查询并获得结果时,整个结果集都在内存中,只在libmysql(dll | so)客户机内存空间而不是PHP内存空间中。从那里一个接一个地获取行非常快,因为libmysql经过编译和高度优化,而php是一种解释语言。在小的结果上,差异可能不会立即显现出来,但在大的结果上,您会注意到。将一个包含数百万行的表加载到一个数组中,可能会超出内存限制。

与逐行读取和处理表相比,将多达10000行的表读取到PHP数组中有什么缺点?

假设您的数据没有耗尽所有内存,我认为使用数组没有任何意义。当您向服务器发送查询并获得结果时,整个结果集都在内存中,只在libmysql(dll | so)客户机内存空间而不是PHP内存空间中。从那里一个接一个地获取行非常快,因为libmysql经过编译和高度优化,而php是一种解释语言。在小的结果上,差异可能不会立即显现出来,但在大的结果上,您会注意到。

将一个包含数百万行的表加载到一个数组中,可能会超出内存限制。