Главная > Программирование > РНР: настольная книга программиста
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

12.8. Операции контроля ошибок в PHP

РНР поддерживает один оператор контроля ошибок — знак который употребляется перед выражением. При этом любое сообщение об ошибке, которое могло бы сгенерироваться этим выражением, будет проигнорировано, т. е. будет продолжено выполнение программы, только данное выражение не будет принимать в нем участия.

Если параметр track_errors установлен как enabled, все сообщения об ошибках, появившиеся в результате действия данного выражения, будут сохранены в глобальной переменной $php_errormsg. Эта переменная будет изменяться при появлении каждой новой ошибки, поэтому прежде чем воспользоваться ею, вам необходимо проверить ее заранее. Например:

<?php

/* намеренная ошибка SQL (дополнительная кавычка) */

$res = @mysql_query("select name, code from 'namelist") or die ("Query failed: error was '$php_errormsg'");

?>

Результат выполнения программы представлен на рис. 12.1.

Рис. 12.1. Результат выполнения скрипта


ВНИМАНИЕ

Если вы используете @, чтобы подавить ошибки от некоторой функции, в таком случае сам скрипт прекратит свое выполнение без какого-либо объяснения, почему он это сделал.


<< Предыдущий параграф Следующий параграф >>
Оглавление