Trong PHP bị lỗi quá bộ nhớ cho phép thì làm thế nào?
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted
(http://images.diendannhatban.info/albums/php/2015-11-05_1720_php_memory_limit.png)
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted
Có 2 cách để xử lý vấn đề này.
1. Thiết lập bộ nhớ cho phép trong php.ini
; Maximum amount of memory a script may consume (128MB)
; http://php.net/memory-limit
memory_limit = 128M
2. Không giới hạn bộ nhớ (Có thể làm tràn bộ nhớ máy chủ)
ini_set('memory_limit', '-1');
*Ý tưởng: Các bạn có thể viết code quản lý bộ nhớ trên script để quản lý chương trình hiệu quả hơn
private function convert($size)
{
$unit=array('b','kb','mb','gb','tb','pb');
return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];
}
Output: '216.29 mb'
Tham khảo:
http://php.net/manual/en/ini.core.php#ini.memory-limit