Php 如果结果较大,则结果不显示
这让我头疼。这已经是4个小时了,我只是绕着它转了一圈:(。我的问题是,当我从mysql获取大型结果到php时,它没有显示任何内容。总结果大约是20000多个数据。因此,我所做的是将结果限制在1000个,它确实按照预期显示了结果 是否有一些配置需要设置或更改 下面是我的示例查询 不起作用(当结果超过10000时)Php 如果结果较大,则结果不显示,php,mysql,laravel,Php,Mysql,Laravel,这让我头疼。这已经是4个小时了,我只是绕着它转了一圈:(。我的问题是,当我从mysql获取大型结果到php时,它没有显示任何内容。总结果大约是20000多个数据。因此,我所做的是将结果限制在1000个,它确实按照预期显示了结果 是否有一些配置需要设置或更改 下面是我的示例查询 不起作用(当结果超过10000时) 从'tbl_item'中选择*,其中'pricelist_id`=1和'published`='unpublished','type`='item','parent_id`=0和'tbl
从'tbl_item'中选择*,其中'pricelist_id`=1和'published`='unpublished','type`='item','parent_id`=0和'tbl_item`.`status`'inactive'订单由'order'asc limit 10000
工作(只需将结果限制为1000)
从'tbl_item'中选择*,其中'pricelist_id`=1和'published`='unpublished','type`='item','parent_id`=0和'tbl_item`.`status`'inactive'订单由'order`asc limit 1000
奇怪,帮帮任何人
关于,可能结果集占用了太多内存。这将导致致命错误,您是否激活了错误报告
ini_set('display_errors', 1);
error_reporting(-1);
通过将以下内容添加到脚本中,可以设置更高的内存限制:
ini_set('memory_limit', '2048M'); // would be really high, but good enough to investigate on the problem
然后,您可以使用
内存\u get\u peak\u usage()
来显示…嗯,内存消耗的峰值可能结果集占用了太多内存。这将导致致命错误,您是否激活了错误报告
ini_set('display_errors', 1);
error_reporting(-1);
通过将以下内容添加到脚本中,可以设置更高的内存限制:
ini_set('memory_limit', '2048M'); // would be really high, but good enough to investigate on the problem
然后,您可以使用
内存\u get\u peak\u usage()
来显示内存消耗的峰值。您需要在php.ini中更改以下值
in php.ini
max_execution_time = 3000 // seconds
memory_limit = 512M
您可以在运行时使用ini_set()函数更改此值,如下所示
ini_set("max_execution_time", "3000"); // seconds
ini_set("memory_limit","512M");
您可以根据需要更改秒数。您需要在php.ini中更改以下值
in php.ini
max_execution_time = 3000 // seconds
memory_limit = 512M
您可以在运行时使用ini_set()函数更改此值,如下所示
ini_set("max_execution_time", "3000"); // seconds
ini_set("memory_limit","512M");
您可以根据需要更改秒数。我是使用mssql遇到这个问题的。我的结果集限制为64512。 尝试设置MSSQL.TEXTSIZE或TEXTLIMIT
如果php仍然忽略它,您也可以尝试配置FREETDS(/etc/FREETDS/FREETDS.conf@ubuntu)我使用mssql遇到了这个问题。我的结果集限制为64512。 尝试设置MSSQL.TEXTSIZE或TEXTLIMIT
如果php仍然忽略它,您也可以尝试配置FREETDS(/etc/FREETDS/FREETDS.conf@ubuntu)try
ini_集('memory_limit','254M');//您的内存限制为字符串ini_集('max_execution_time',0)
20000对于MySql来说,要处理的数据量非常小,PHP配置或您的代码一定有问题。请向我们展示您的PHP代码,什么是memory\u limit
和max\u execution\u time
已经设置好了?其余的代码在哪里?您已经用PHP和Laravel标记了这个问题,但没有添加任何信息关于这方面的信息。当您使用MySQL shell、phpMyAdmin、Laravel运行相同的查询时,您收到的更快吗?是否检查了数据库索引?请尝试ini\u set('memory\u limit','254M');//您的内存限制为string ini\u set('max\u execution\u time',0)
20000对于MySql来说,要处理的数据量非常小,PHP配置或您的代码一定有问题。请向我们展示您的PHP代码,什么是memory\u limit
和max\u execution\u time
已经设置好了?其余的代码在哪里?您已经用PHP和Laravel标记了这个问题,但没有添加任何信息关于这方面的信息。当您使用MySQL shell、phpMyAdmin、Laravel运行相同的查询时,您收到的速度更快吗?您是否检查了数据库索引?这看起来与此问题根本不相关-OP询问了有关MySQL对~20k个元素的结果集的帮助这看起来与此问题根本不相关-OP询问了在~20k个元素的结果集上,MySQL没有帮助请为您的答案添加一些解释-为什么这样可以解决问题?请为您的答案添加一些解释-为什么这样可以解决问题?