En son web geliştirme öğreticiler
 

PHP 5 Hata İşlevleri


PHP Hata Giriş

Hata fonksiyonları hata işleme ve günlük başa kullanılır.

Hata fonksiyonları bize hataları kaydedilebilir yolu kendi hata işleme kurallarını tanımlamak ve değiştirmek için izin verir.

günlük işlevleri bizi diğer makinelerden, e-postalar veya sistem günlükleri doğrudan mesaj göndermek için izin verir.

Hata raporlama fonksiyonları bize verilen hangi seviyede ve hata geribildirim tür özelleştirebilirsiniz.


Kurulum

PHP hatası fonksiyonları PHP çekirdeğinin bir parçasıdır. Kurulum bu işlevleri kullanmak için gereklidir.


Süre Yapılandırması

Hata işlevlerin davranışı php.ini içindeki ayarlardan etkilenir.

Hatalar ve günlüğü yapılandırma seçenekleri:

isim Varsayılan Açıklama değiştirilebilir
error_reporting BOŞ (Bir tamsayı ya da adlandırılmış sabitleri olarak) hata raporlama seviyesini ayarlar PHP_INI_ALL
display_errors "1" Kullanıcıdan gizli olmalıdır eğer hatalar ekrana basılı veya gerekip gerekmediğini belirtir.
Not: Bu özellik üretim sistemleri üzerinde asla kullanılmamalıdır (sadece sizin gelişimini desteklemek için)
PHP_INI_ALL
display_startup_errors "0" display_errors etkin olsa bile PHP en başlatılırken oluşan hatalar gösterilmez
Not: Hata ayıklamıyorsanız display_startup_errors uzak tutmak için tavsiye edilir
PHP_INI_ALL
log_errors "0" komut dosyası hata iletileri sunucunun hata günlüğüne veya error_log kaydedilir gerekip gerekmediğini tanımlar.
Not: önemle üretim web sitelerinde göstererek hata yerine hata günlüğünü kullanılması tavsiye edilir
PHP_INI_ALL
log_errors_max_len "1024" bayt Hata günlüğü iletilerinin azami uzunluğunu belirler. Değeri "0" hiç bir maksimum uzunluk uygulanmaz için kullanılabilir. Bu uzunluk günlüğe hatalar uygulanır, hataları görüntülenir ve ayrıca $ php_errormsg için (available since PHP 4.3) PHP_INI_ALL
ignore_repeated_errors "0" Tekrarlanan hata iletileri günlüğe belirtir. Ayarlandığında "1" aynı hat üzerinde aynı dosyadan tekrarlanan hataları ile hata günlüklerine (available since PHP 4.3) PHP_INI_ALL
ignore_repeated_source "0" Tekrarlanan hata iletileri günlüğe belirtir. Ayarlandığında "1" o dosyaları veya kaynak hatları farklı gelen tekrarlanan hataları ile hata günlüklerine (available since PHP 4.3) PHP_INI_ALL
report_memleaks "1" Olarak ayarlanırsa "1" (the default) , bu parametre Zend hafıza yöneticisi tarafından algılanan bellek sızıntıları bir rapor gösterecektir (available since PHP 4.3) PHP_INI_ALL
track_errors "0" Olarak ayarlanırsa "1" , son hata iletisi daima değişken $ php_errormsg mevcut olacak PHP_INI_ALL
html_errors "1" Hata mesajlarında HTML etiketlerini kapatır PHP_INI_ALL
PHP'de php_ini_system <= 4.2.3.
xmlrpc_errors "0" Normal hata raporlaması biçimleri XML-RPC hata mesajı olarak hataları kapatır (available since PHP 4.1) php_ini_system
xmlrpc_error_number "0" XML-RPC faultCode elemanının değeri olarak kullanılır (available since PHP 4.1) PHP_INI_ALL
docref_root "" (PHP 4.3 beri) PHP_INI_ALL
docref_ext "" (PHP 4.3.2 beri) PHP_INI_ALL
error_prepend_string BOŞ bir hata mesajı önce çıkışa bir dize belirtir PHP_INI_ALL
error_append_string BOŞ bir hata mesajı sonrasında çıkışa bir dize belirtir PHP_INI_ALL
error_log BOŞ Hataların kaydedileceği gereken dosyanın adını belirtir. Dosya HTTP sunucunun kullanıcısı tarafından yazılabilir olmalıdır. syslog özel değeri kullanılırsa, hatalar yerine sistem günlüğüne gönderilir PHP_INI_ALL

PHP Hata ve Günlük İşlevleri

fonksiyon Açıklama
debug_backtrace() Geri izleme üretir
debug_print_backtrace() Geri izleme yazdırır
error_get_last() oluşan son hatayı döndürür
error_log() bir dosyaya, bir günlüğüne bir hata iletisi gönderir veya posta hesabına
error_reporting() hatalar bildirilir belirtir
restore_error_handler() Bir önceki hata eylemcisini devreye sokar
restore_exception_handler() Bir önceki istisna eylemcisini devreye sokar
set_error_handler() Kullanıcı tanımlı bir hata eylemcisini belirler
set_exception_handler() Kullanıcı tanımlı bir istisna eylemcisini belirler
trigger_error() Bir kullanıcı düzeyinde hata mesajı oluşturur
user_error() Takma trigger_error()

PHP 5 Önceden tanımlı Hata ve Günlük Sabitler

değer sabit Açıklama
1 E_ERROR Ölümcül çalışma zamanı hataları. elde edilemez hatalar. script Yürütme durdurulur
2 E_WARNING Çalışma zamanı uyarıları (non-fatal errors) . script Yürütme durduruldu edilmez
4 E_PARSE Derleme zamanı hataları ayrıştırmak. hatalar sadece çözümleyici tarafından üretilen edilmelidir ayrıştırmak
8 E_NOTICE Çalışma zamanı fark eder. senaryo bir hata olabilir bir şey buldum ama normalde bir komut dosyası çalıştırılırken da olabilirdi
16 E_CORE_ERROR PHP başlangıçta ölümcül hatalar. PHP çekirdeği ile üretilmesi dışında, E_ERROR gibidir
32 E_CORE_WARNING PHP başlangıçta olmayan ölümcül hatalar. PHP çekirdeği ile üretilmesi dışında, E_WARNING gibidir
64 E_COMPILE_ERROR Ölümcül derleme zamanı hataları. Zend betik motoru tarafından tarafından üretilmesi dışında, E_ERROR gibidir
128 E_COMPILE_WARNING Ölümcül olmayan derleme zamanı hataları. Zend betik motoru tarafından tarafından üretilmesi dışında, E_WARNING gibidir
256 E_USER_ERROR Ölümcül kullanıcı tarafından oluşturulan hata. PHP işlevi tarafından PHP kodunda üretilmesi dışında, E_ERROR gibidir trigger_error()
512 E_USER_WARNING Ölümcül olmayan kullanıcılar tarafından oluşturulan uyarı. PHP işlevi tarafından PHP kodunda üretilmesi dışında, E_WARNING gibidir trigger_error()
1024 E_USER_NOTICE haber Kullanıcı tarafından oluşturulan. PHP işlevi tarafından PHP kodunda üretilmesi dışında, E_NOTICE gibidir trigger_error()
2048 E_STRICT (PHP 5'ten beri ama PHP 5.4 kadar E_ALL dahil değildir) PHP kodunuzun iyi çalışabilirliği ve ileriye dönük uyumluluğunu kodunuzda değişiklik önermek için etkinleştirme
4096 E_RECOVERABLE_ERROR Yakalanabilir ölümcül hatası. Bir muhtemelen tehlikeli hata oluştu, ancak kararsız durumda bırakmadığını gösterir. Hata, kullanıcı tanımlı kolu tarafından yakalandı değilse, uygulama betik E_ERROR olarak iptal (Since PHP 5.2)
8192 E_DEPRECATED Çalışma zamanı fark eder. Gelecekteki sürümlerinde çalışmaz koduyla ilgili uyarıları almak için bu etkinleştirme (Since PHP 5.3)
16384 E_USER_DEPRECATED Kullanıcı tarafından oluşturulan uyarı mesajı. PHP işlevi tarafından PHP kodunda üretilmesi dışında, E_DEPRECATED gibidir trigger_error() (PHP 5.3 yana)
32767 E_ALL Tüm PHP hataları ve uyarıları etkinleştirme (except E_STRICT in versions < 5.4)