PHP'de hata işleme, uygulamanızda oluşabilecek hataları yakalama, raporlama ve işleme sürecidir. PHP'de farklı türde hatalar olabilir: sintaks hataları, çalışma zamanı hataları ve mantıksal hatalar gibi. Bunları uygun şekilde ele almak, kodunuzun daha güvenilir ve kararlı olmasını sağlar.
error.php
// Hata raporlama seviyesini ayarlama
error_reporting(E_ALL); // Tüm hataları göster
Bu, PHP'nin hangi hataları raporlayacağını belirtir. E_ALL, tüm hata türlerini raporlamak için kullanılır. Ancak, geliştirme ve canlı ortam arasında farklı ayarlamalar yapılabilir.
error.php
try {
// Potansiyel olarak hata üretebilecek kodlar burada
$dosya = fopen("dosya.txt", "r");
if (!$dosya) {
throw new Exception("Dosya bulunamadı!");
}
} catch (Exception $e) {
// Hata durumunda yapılacak işlemler burada
echo "Hata oluştu: " . $e->getMessage();
}
try-catch yapısı, potansiyel hata üretebilecek kod bloklarını try bloğu içine alır ve olası istisnai durumları catch bloğunda yakalar.
error.php
function customErrorHandler($errno, $errstr, $errfile, $errline) {
echo "<b>Hata:</b> [$errno] $errstr - Dosya: $errfile, Satır: $errline";
}
// Hata işleyiciyi ayarlama
set_error_handler("customErrorHandler");
Bu, özel bir hata işleyici fonksiyonunu ayarlar. set_error_handler() ile belirli hatalar durumunda özel işlemler yapabilirsiniz.
Bu, özel bir hata işleyici fonksiyonunu ayarlar. set_error_handler() ile belirli hatalar durumunda özel işlemler yapabilirsiniz.
error.php
// Hata raporlama seviyesini ayarlama
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
Bu, PHP yapılandırma ayarlarını değiştirmenizi sağlar. display_errors, hataları ekranda gösterip göstermeme özelliğini kontrol eder.
Hata işleme, uygulamanızın sağlamlığını artırırken, kullanıcıya hata detaylarını gösterip göstermemek veya loglamak gibi faktörler dikkate alınmalıdır. Veritabanı bağlantıları, dosya işlemleri ve dış kaynaklarla yapılan işlemler gibi riskli kod blokları özellikle dikkatlice ele alınmalıdır.