PHP 7'de hatalar

PHP 7'de hataların PHP tarafından bildirilişi değişmiştir. PHP5'te kullanılan geleneksel hata bildirme mekanizması üzerinden bildirmek yerine hataların çoğu Error istisnası yavrulanarak bildirilir.

Normal istisnalardaki gibi bu Error istisnaları da catch bloğuyla ilk eşleşmeye kadar kaynamaya devam eder. Eşleşecek blok yoksa, set_exception_handler() ile kurulmuş öntanımlı işleyicilerden herhangi biri çağrılır, öntanımlı bir istisna işleyicisi yoksa istisna ölümcül hataya dönüştürülüp geleneksel bir hata gibi işlem görür.

Error hiyerarşisi Exception sınıfından miras almadığından, PHP 5'te yakalanmayan istisnaları işleyecek catch (Exception $e) { ... } bloklarını kullanan kod, bu hataların (Error) bu bloklarca yakalanmadığını bulacaktır. Ya bir catch (Error $e) { ... } bloğu ya da bir set_exception_handler() işleyicisi gerekir.