Heim  >  Artikel  >  Backend-Entwicklung  >  So unterdrücken Sie die Fehlerberichterstattung in PHP

So unterdrücken Sie die Fehlerberichterstattung in PHP

藏色散人
藏色散人Original
2022-11-21 10:10:201730Durchsuche

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.

So unterdrücken Sie die Fehlerberichterstattung in PHP

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn