PHP "Fatal error: Allowed memory size exhausted" Hatası ve Çözümü: Adım Adım Kılavuz

PHP "Fatal error: Allowed memory size exhausted" Hatası ve Çözümü: Adım Adım Kılavuz

PHP bellek hatası, genellikle bellek limitinin aşıldığı durumlarda ortaya çıkar. Bu makalede, hatanın sebepleri ve adım adım çözüm yolları ele alınmıştır.

Al_Yapay_Zeka

Her web geliştiricisi, projelerinde bir noktada karşılaştığı hatalarla uğraşmak zorunda kalır. Ancak bazı hatalar var ki, insanı gerçekten zor durumda bırakabilir. Bugün bunlardan birine, PHP "Fatal error: Allowed memory size exhausted" hatasına odaklanacağız. Bu hata, özellikle büyük veri işlemleri ya da karmaşık sistemler geliştirenler için sıkça karşılaşılan bir sorundur. Peki, bu hatayla karşılaştığınızda ne yapmalısınız?

Hata Nedir? Ve Neden Karşılaşılır?



PHP'nin "Fatal error: Allowed memory size exhausted" hatası, PHP'nin belirlediği bellek sınırını aştığınızda karşınıza çıkar. Web siteniz ya da uygulamanız, PHP script'i çalıştırırken, PHP'nin bellek limitini aşarsa bu hatayla karşılaşır. Ancak hatanın yalnızca bellekle ilgili olmadığına dikkat etmek önemlidir. Çoğu zaman, kodunuzun verimsizliği veya yanlış yapılandırmaları bu hataya yol açabilir.

Hata Mesajını Okuyarak Ne Yapabilirsiniz?



Bu hata genellikle şu şekilde görünür:

kopyala
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 327680 bytes) in /path/to/script.php on line 123
PHP


Yukarıdaki mesajda, PHP'nin kullanabileceği toplam bellek miktarını aşan bir işlem gerçekleştirilmiş olduğunu görüyorsunuz. Bu durumda, yapılacak ilk şey, bellek limitini artırmaktır. Ancak bu, sadece geçici bir çözüm olabilir. Gerçekten kök nedene inmek önemlidir.

Adım Adım Çözüm: "Fatal error: Allowed memory size exhausted" Hatası Nasıl Çözülür?



1. PHP Bellek Limitini Artırın
İlk çözüm, PHP'nin bellek limitini artırmaktır. Bu işlem, genellikle basittir. PHP konfigürasyon dosyasını (php.ini) açın ve aşağıdaki satırı ekleyin ya da mevcut değeri artırın:

kopyala
memory_limit = 256M
PHP


Bu satır, PHP'nin kullanabileceği maksimum belleği 256MB olarak belirler. Ancak, bu değeri site gereksinimlerinize göre artırabilirsiniz.

2. PHP Dosyasında Bellek Limitini Artırmak
Eğer php.ini dosyasına erişiminiz yoksa, .htaccess dosyasını kullanabilirsiniz. Aşağıdaki satırı .htaccess dosyasına ekleyerek belleği artırabilirsiniz:

kopyala
php_value memory_limit 256M
PHP


Bu işlem, bellek limitini doğrudan sunucu tarafında değiştirecektir.

3. Kodunuzu Optimize Edin
PHP'nin bellek limitini artırmak, geçici bir çözüm olabilir, ancak gerçek çözüm kodunuzu optimize etmekten geçer. Özellikle büyük veri kümesi işleyen scriptlerde, her zaman hafızayı verimli kullanmak önemlidir. Kodunuzun her bölümünde belleği nasıl kullandığını kontrol edin. Gereksiz veri yüklemeleri veya büyük veri kümeleriyle işlem yapıyorsanız, bu işlemleri parçalayarak daha verimli hale getirebilirsiniz.

Örnek: Veritabanı Sorgularını Optimize Etmek



Bir web sitesinde sıkça karşılaşılan hatalardan biri, veritabanına yapılan çok sayıda gereksiz sorgudur. Bu tür sorgular, sunucunun belleğini hızla tüketebilir. Örneğin, çok büyük veri kümesi üzerinde işlem yaparken, her sorgunun sonucunu belleğe almak yerine, sorguları daha küçük parçalara bölecek şekilde düzenleyebilirsiniz. İşte basit bir örnek:

kopyala
// Eski kod (bütün veriyi tek seferde çekiyor) $query = "SELECT * FROM large_table"; $result = mysqli_query($connection, $query); // Yeni kod (veri küçük parçalara bölünüyor) $query = "SELECT * FROM large_table LIMIT 100 OFFSET 0"; $result = mysqli_query($connection, $query); // Veriyi çektikten sonra offset artırılarak tekrar sorgu yapılır.
PHP


Bu şekilde, verileri küçük gruplar halinde işleyerek bellek tüketimini azaltabilirsiniz.

4. Gereksiz PHP Uzantılarını Devre Dışı Bırakın
PHP, birçok farklı uzantıya sahip olup, bazıları sitenizde hiç kullanılmaz. Kullanılmayan uzantılar, PHP'yi gereksiz yere meşgul edebilir ve bellek kullanımını artırabilir. Eğer sunucunuzda yüklü olan ve kullanılmayan PHP uzantıları varsa, bu uzantıları devre dışı bırakmak sistemin verimli çalışmasını sağlayabilir.

Sonuç: Hata İle Savaşın, Güçlü Kalın



PHP'deki "Fatal error: Allowed memory size exhausted" hatası, çoğunlukla basit bir bellek limitinin arttırılmasıyla çözülebilir. Ancak, sorunun kökenine inmek ve kodu optimize etmek, daha kalıcı ve verimli bir çözüm sağlar. Bu hatayla karşılaştığınızda, acele etmeyin. Adım adım bu çözüm yollarını deneyerek, sorunu ortadan kaldırabilir ve projelerinizi daha sağlam temeller üzerine inşa edebilirsiniz.

İlgili Yazılar

Benzer konularda diğer yazılarımız

2025'te Web Geliştiriciler İçin En İyi 10 Ücretsiz API Kaynağı ve Kullanım Alanları

Web geliştiricilerinin işini kolaylaştıracak güçlü araçlar ve kaynaklar arayışı hiç bitmez. Bu yıl, 2025'in sunduğu yeniliklerle dolu birçok ücretsiz API kaynağı, geliştiricilerin projelerini hızla ve verimli bir şekilde hayata geçirmelerine yardımcı...

Web Geliştiricilerin Gözünden: JavaScript ile SEO Dostu Dinamik İçerik Oluşturma Stratejileri

**Web Geliştiricilerin Gözünden: JavaScript ile SEO Dostu Dinamik İçerik Oluşturma Stratejileri**Modern web geliştirme dünyasında, her geçen gün daha fazla içerik dinamik hale geliyor. Bu içerikler JavaScript ile oluşturuluyor ve interaktif hale getirilerek...

Dijital Dünyada Gizli Tehlike: Web Sitenizdeki Görünmeyen Hataları Nasıl Tespit Edebilirsiniz?

---**Dijital dünyada her şey göründüğü gibi değildir.** Gözle göremediğiniz küçük teknik hatalar, web sitenizin hızını, SEO performansını ve kullanıcı deneyimini ciddi şekilde etkileyebilir. Bu yazıda, çoğu zaman fark edilmeyen ancak çok önemli olan bu...

Dijital Göç: Verilerinizi Yeni Bir Sunucuya Taşırken Dikkat Edilmesi Gereken 7 Kritik Adım

Dijital dünyada yerinizi sağlamlaştırmak için en önemli unsurlardan biri verilerinizin güvenliği ve erişilebilirliğidir. Peki, verilerinizi yeni bir sunucuya taşımak zorunda kaldığınızda, dikkat etmeniz gereken en önemli adımlar neler? Dijital göç, çoğu...

Web Geliştiriciler İçin 2025'te En Popüler PHP Framework’leri: Yii2, Laravel ve Symfony Karşılaştırması

PHP Framework’leri: Yeni Bir Web Uygulaması İçin Doğru Seçimi Yapmak2025 yılına geldiğimizde, web geliştiricilerinin karşılaştığı en büyük zorluklardan biri, doğru PHP framework'ünü seçmek. Yii2, Laravel ve Symfony, şu anda piyasada en çok tercih edilen...

AI ile Web Geliştirme: Yapay Zeka Destekli Kod Yazma ve Otomasyon Araçları ile Zaman Kazanmak

---Web geliştirme dünyasında her geçen gün yeni bir teknolojik devrim yaşanıyor. Son yıllarda ise, belki de en dikkat çekici olanı, yapay zekanın (AI) web geliştirme süreçlerine entegrasyonu. Bu yazıda, **Yapay Zeka Destekli Kod Yazma** ve **Otomasyon...