plik


Operatory Kontroli BłędówPodręcznik PHPPoprzedniRozdział 11. OperatoryNastępnyOperatory Kontroli Błędów PHP obsługuje obecnie jeden operator kontroli błędów: znak małpy (@). Jeśli znak ten zostanie postawiony przed dowolnym wyrażeniem w PHP, jakiekolwiek powiadomienia o błędach wygenerowane przez to wyrażenie zostaną pominięte (nie będą wyświetlone). Jeśli mechanizm track_errors został włączony, jakiekolwiek powiadomienie o błędzie zostanie zapisane do zmiennej globalnej $php_errormsg. Należy jednak pamiętać, że zawartość tej zmiennej jest nadpisywana przy każdym błędzie, więc po wystąpieniu kolejnego błędu w skrypcie, informacja o poprzednim błędzie jest tracona. <?php /* Zamierzony błąd obsługi pliku */ $my_file = @file ('nieistniejący_plik') or die ("Błąd przy otwieraniu pliku: treść błędu: '$php_errormsg'"); // mechanizm ten działa dla wszystkich wyrażeń, nie tylko dla funkcji: $value = @$cache[$key]; // spowoduje niewyświetlenie powiadomienia, jeśli nie istnieje wpis do tablicy o // indeksie $key. ?> Notatka: Operator @ działa tylko na wyrażeniach. Tłumacząc to łopatologicznie: jeśli da się pobrać wartość czegoś, można postawić operator @ przed tym czymś. Zgodnie z powyższą regułą, można postawić @ przed zmiennymi, wywołaniami funkcji, instrukcjami include(), stałymi, itp. Nie można stawiać @ przed definicjami funkcji bądź klasy, lub strukturami warunkowymi, takimi jak if lub foreach, itd. Patrz także: error_reporting(). Notatka: Operator "@" nie ukrywa komunikatów o błędach, które są wynikiem błędu parsowania (parse error). Ostrzeżenie Obecnie operator kontroli błędów "@" wyłączy wyświetlanie powiadomienia o błędzie nawet dla błędów krytycznych, które przerwą wykonywanie skryptu. Oznacza to, że jeśli użyjesz tego operatora przed wywołaniem funkcji, która jest nieosiągalna lub ma literówkę w nazwie, skrypt przerwie pracę nie powiadamiając dlaczego. PoprzedniSpis treściNastępnyOperatory PorównaniaPoczątek rozdziałuOperatory Wykonania Polecenia Systemowego

Wyszukiwarka

Podobne podstrony:
language operators errorcontrol
language operators errorcontrol
language operators errorcontrol
language operators comparison
language operators increment
language operators bitwise
language operators array
language operators execution
language operators
language operators arithmetic
language operators bitwise
language operators precedence
language operators execution
language operators increment

więcej podobnych podstron