Bize Ulaşın
shape shape
PHP

PHP Fatal error: Allowed memory size of XX bytes exhausted (tried to allocate XX bytes) Hatası Çözümü

PHP Fatal error: Allowed memory size of XX bytes exhausted (tried to allocate XX bytes) Hatası Çözümü

Yayınlayan Rois Editör

Yayınlanma 1 Yıl Önce

Kategori PHP

PHP Fatal error: Allowed memory size of XX bytes exhausted (tried to allocate XX bytes) Hatası Çözümü

"PHP Fatal error: Allowed memory size of XX bytes exhausted (tried to allocate XX bytes)" hatası, PHP betiğinizin hafızada belirtilen limiti aştığı anlamına gelir. Bu hata, büyük boyutlu verileri işlerken veya büyük dizi veya nesne verileri üzerinde işlem yaparken sıklıkla ortaya çıkar. Bu hatayı çözmek için aşağıdaki adımları takip edebilirsiniz:

  1. Hafıza sınırını artırın: Bu hatanın çözümü, PHP'nin hafıza limitini artırmaktır. Bu limiti artırmak için "memory_limit" ayarını artırabilirsiniz. Bunun için php.ini dosyasında veya .htaccess dosyasında "memory_limit" ayarını artırabilirsiniz. Örneğin, "memory_limit = 256M" gibi.

  2. Hafıza kullanımını optimize edin: Hafıza sınırını artırmak çözüm olmadığında, kodunuzu hafıza kullanımını optimize edecek şekilde düzenleyebilirsiniz. Örneğin, büyük boyutlu verileri işlemeden önce, onları küçük parçalara bölebilirsiniz. Ayrıca, gereksiz verileri hafızadan silmek için "unset" fonksiyonunu kullanabilirsiniz.

  3. Veritabanı sorgularını optimize edin: Büyük veri kümeleri üzerinde çalışırken, veritabanı sorgularını optimize etmek önemlidir. Sorgu sonuçlarını küçültmek için "LIMIT" anahtar kelimesini kullanabilirsiniz. Ayrıca, sorgu sonuçlarını ön belleğe almak için "memcached" gibi bir araç kullanabilirsiniz.

  4. PHP'nin bellek kullanımını kontrol edin: PHP, bellek kullanımını kontrol etmek için "memory_get_usage" fonksiyonuna sahiptir. Bu fonksiyonu kullanarak, hangi kodun hafıza tüketiminin yüksek olduğunu belirleyebilirsiniz.

  5. Kodunuzu yeniden düzenleyin: Büyük miktarda veri işleyen kodlar için daha verimli algoritmalar ve teknikler kullanmak gerekebilir. Örneğin, verileri paralel olarak işleyen bir çoklu işlem yapısı kullanabilirsiniz.

Yukarıdaki adımları izleyerek, "PHP Fatal error: Allowed memory size of XX bytes exhausted (tried to allocate XX bytes)" hatasını çözebilirsiniz. Bu hatanın nedeni, PHP betiğinizin hafıza limitini aşması olabilir. Hafıza sınırını artırabilir veya kodunuzu optimize edebilirsiniz. Ayrıca, veritabanı sorgularını optimize etmek ve kodunuzu yeniden düzenlemek de hatayı önlemeye yardımcı olabilir.

Etiketler: php

Projeniz mi var?

Hemen iletişime geçin
bize projenizden bahsedin.