note 130466 added to language.operators.errorcontrol

From: Date: Sun, 31 Aug 2025 14:54:43 +0000
Subject: note 130466 added to language.operators.errorcontrol
Groups: php.notes 
Request: Send a blank email to php-notes+get-222326@lists.php.net to get a copy of this message
There is an error about error_reporting()'s return value inside an error handler in the documentation. "Prior to PHP 8.0.0, the error_reporting() called inside the custom error handler always returned 0 if the error was suppressed by the @ operator. As of PHP 8.0.0, it returns the value of this (bitwise) expression: E_ERROR | E_CORE_ERROR | E_COMPILE_ERROR | E_USER_ERROR | E_RECOVERABLE_ERROR | E_PARSE." In fact, in PHP 8.0.0+, error_reporting() in an error handler returns $error_reporting & (E_ERROR | E_CORE_ERROR | E_COMPILE_ERROR | E_USER_ERROR | E_RECOVERABLE_ERROR | E_PARSE), where $error_reporting is the value of the global error_reporting ini directive set, no matter through ini or error_reporting(). ---- Server IP: 45.112.84.4 Probable Submitter: 80.90.5.137 (proxied: 101.206.224.180) ---- Manual Page -- https://php.net/manual/en/language.operators.errorcontrol.php Edit -- https://main.php.net/note/edit/130466 Del: integrated -- https://main.php.net/note/delete/130466/integrated Del: useless -- https://main.php.net/note/delete/130466/useless Del: bad code -- https://main.php.net/note/delete/130466/bad+code Del: spam -- https://main.php.net/note/delete/130466/spam Del: non-english -- https://main.php.net/note/delete/130466/non-english Del: in docs -- https://main.php.net/note/delete/130466/in+docs Del: other reasons-- https://main.php.net/note/delete/130466 Reject -- https://main.php.net/note/reject/130466 Search -- https://main.php.net/manage/user-notes.php

« previous php.notes (#222326) next »