Обработка ошибок
Во многих случаях, если в процессе выполнения функции возникла какая-либо ошибка, то функция возвращает значение FALSE в качестве своего результата. Так поступают многие встроенные функции в РНР, и этот же прием можно использовать и в своих собственных функциях. Например, требуется разработать функцию, возвращающую значение, обратное своему аргументу. Если же значение аргумента равно 0, то функция возвращает значение FALSE.
function reciprocal($value) { if ($value != 0) { return 1 / $value; } else { return FALSE; } }
Одним из способов обработки значения FALSE, возвращенного какой-нибудь функцией, является использование функции die(или exit). Эта функция отображает сообщение, переданное ей в качестве аргумента, и завершает выполнение скрипта.
Например, требуется открыть файл при помощи функции fopen. В том случае, если функция не может открыть файл (например, если он не существует), она вернет значение FALSE. В таком случае для вывода сообщения об ошибке можно использовать функцию die в сочетании с логическим оператором or:
$filename = "nonexistent_data_file";
$file = fopen($filename, "r") or die ("Файл '$filename' не найден");
?>
При попытке выполнения данного фрагмента кода сперва будет выведено стандартное предупреждение РНР (его вывод можно отключить), а потом сообщение об ошибке, после чего выполнение скрипта завершится.
Warning: fopen(nonexistent_data_file): failed to open stream: No such file or directory in test.php on line 3 Файл nonexistent_data_file' не найден
Автор: Стивен Хольцнер. Переводчик: С. Банников