Manuál PHP | ||
---|---|---|
Předcházející | Kapitola 11. Operátory | Další |
PHP podporuje jeden operátor řízení chyb: znak at (@). Když ho předřadíte výrazu v PHP, jakékoli chybové zprávy, které se mohou generovat ve výrazu, budou ignorovány.
Pokud je zapnutotrack_errors, budou se všechny chybové zprávy generované výrazem ukládat do globální proměnné $php_errormsg. Tato proměnná bude přepsána při každé chybě, takže ji testujte vždy co nejdříve, pokud ji chcete používat.
<?php /* Intentional file error */ $my_file = @file ('non_existent_file') or die ("Failed opening file: error was '$php_errormsg'"); // this works for any expression, not just functions: $value = @$cache[$key]; // will not issue a notice if the index $key doesn't exist. ?> |
Poznámka: Operátor @ pracuje pouze na výrazech. Platí jednoduché pravidlo: můžete-li získat hodnotu něčeho, můžete před to dát operátor @. To se týká například proměnných, funkcí, volání include() konstant a podobně. Nemůžete ho předřadit definicím funkcí nebo tříd a podmínkovým strukturám typu if nebo foreach.
Viz také error_reporting().
Varování |
V současnosti předřazení operátoru řízení chyb "@" vyřadí i hlášení kritických chyb, které způsobí ukončení provádění skriptu. To mj. znamená, že pokud použijete "@" k potlačení chyb z nějaké funkce, a tato funkce není k dispozici nebo obsahuje chyby, skript zde skončí bez jakékoli indikace, co se stalo. |
Předcházející | Domů | Další |
Operátory porovnání | Nahoru | Prováděcí operátory |