thinkphp 使用队列生成大文件csv
请问一下
如果使用命令生成大文件csv文件
查询数据已使用分页查询方式
现在有个问题 不知道这样做法内存会不会溢出呢?
用队列命令导出 跟 memory_limit和max_execution_time参数有关系吗?
thinkphp 使用队列生成大文件csv
请问一下
如果使用命令生成大文件csv文件
查询数据已使用分页查询方式
现在有个问题 不知道这样做法内存会不会溢出呢?
用队列命令导出 跟 memory_limit和max_execution_time参数有关系吗?
15 回答8.4k 阅读
5 回答4.8k 阅读✓ 已解决
8 回答6.2k 阅读
4 回答4.4k 阅读✓ 已解决
5 回答3.2k 阅读✓ 已解决
4 回答4k 阅读
4 回答2.4k 阅读✓ 已解决
如果讲究内存消耗,那可以选择使用游标一次查一行,然后写入文件,这样性能应该是最好的,另外,对于写入文件,你应该避免直接使用
file_put_contents
。在命令行运行时 默认
max_execution_time
是 0 ,但是你 可以覆盖这个设置。memory_limit
还是受到 php.ini 里面配置限制的。如果你只是想临时设置这些参数,可以使用 php 的
-d
参数,就像这样php -dmemory_limit=2G -dmax_execution_time=10
。