Heim > Artikel > Backend-Entwicklung > So unterdrücken Sie die Fehlerberichterstattung in PHP
So unterdrücken Sie Fehler in PHP: 1. Öffnen Sie die entsprechende PHP-Datei. 2. Verwenden Sie den @-Operator, um einen einzelnen Fehler zu unterdrücken, z. B. „@include ('config.inc');“; Ersetzen Sie das @-Symbol. Wird für Funktionen verwendet, deren Ausfall die Gesamtfunktionalität des Skripts nicht beeinträchtigt.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, Dell G3-Computer.
Wie unterdrücke ich die Fehlerberichterstattung in PHP?
Verwenden Sie @, um Fehler zu unterdrücken
In PHP können Sie den @-Operator verwenden, um einzelne Fehler zu unterdrücken. Wenn Sie beispielsweise nicht möchten, dass PHP meldet, dass eine bestimmte Datei nicht enthalten ist, können Sie Code wie diesen schreiben:
@include ('config.inc.php');
Oder wenn Sie den Fehler „Teilen durch 0“ nicht sehen möchten:
$x = 8; $y = 0; $num = @($x/$y);
Wie Funktionsaufrufe oder mathematische Operationen kann nur das @-Symbol Ausdrücke verarbeiten. Das @-Symbol kann nicht vor bedingten Anweisungen, Schleifenanweisungen, Funktionsdefinitionen usw. verwendet werden.
Als Faustregel empfehle ich die Verwendung des @-Symbols für Funktionen, deren Ausfall die Gesamtfunktionalität des Skripts nicht beeinträchtigt. Alternativ können Sie Fehler unterdrücken, wenn Sie selbst besser mit den Fehlern von PHP umgehen können.
Einige Open-Source-Software nutzt einen Teil des Codes, um Fehler zu unterdrücken:
//code from phpbb3(common.php) // If we are on PHP >= 6.0.0 we do not need some code if (version_compare(PHP_VERSION, '6.0.0-dev', '>=')) { /** * @ignore */ define('STRIP', false); } else { @set_magic_quotes_runtime(0); // Be paranoid with passed vars if (@ini_get('register_globals') == '1' || strtolower(@ini_get('register_globals')) == 'on' || !function_exists('ini_get')) { deregister_globals(); } define('STRIP', (get_magic_quotes_gpc()) ? true : false); } //code from phpbb3(style.php) $dir = @opendir("{$phpbb_root_path}styles/{$theme['theme_path']}/theme"); //code from phpbb3(adm/index.php) if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !@is_writable($phpbb_root_path . $cfg_array[$config_name])) { $error[] = sprintf($user->lang['DIRECTORY_NOT_WRITABLE'], $cfg_array[$config_name]); } //code from phpbb3(functions.php) if (($fh = @fopen('/dev/urandom', 'rb'))) { $random = fread($fh, $count); fclose($fh); }
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonSo unterdrücken Sie die Fehlerberichterstattung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!