note 105162 deleted from function.trigger-error by danbrown
| From: | danbrown@php.net | Date: | Mon, 01 Aug 2011 13:47:29 +0000 |
| Subject: | note 105162 deleted from function.trigger-error by danbrown | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-182050@lists.php.net to get a copy of this message | ||
Note Submitter: devote
----
<?php
/*
* РабоÑÐ°ÐµÑ Ð±Ð¾Ð´Ð¾Ð±Ð½Ð¾
ÑÑандаÑÑной ÑÑнкÑии trigger_error но
в оÑлиÑие Ð¾Ñ Ð½ÐµÐµ
* ÑказÑÐ²Ð°ÐµÑ Ð¸Ð¼Ñ Ñайла и
ÑÑÑÐ¾ÐºÑ Ð²ÑзвÑвÑего ÑÑнкÑÐ¸Ñ Ð²
коÑоÑой ÑÑÐ¾Ñ ÑÑиггеÑ
* бÑл иниÑииÑован.
*/
function trigger_error_callee( $message, $error_type = E_USER_NOTICE ) {
set_error_handler( create_function( '$errno, $errstr, $errfile, $errline', '
if ( $errno === E_USER_ERROR || $errno === E_USER_WARNING || $errno === E_USER_NOTICE ) {
echo "<br />\n<b>".str_replace(
array( E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE ),
array( "Error", "Warning", "Notice" ), $errno
)."</b>: ".$errstr."<br />\n";
return true;
}
return false;
' ) );
$dbg = debug_backtrace();
$callee = next( $dbg );
trigger_error( $message.' in
<strong>'.$callee['file'].'</strong> on line
<strong>'.$callee['line'].'</strong>', $error_type );
restore_error_handler();
}
function test( $arg ) {
if ( !is_int( $arg ) ) {
trigger_error_callee( "expect integer, ".gettype( $arg )." given",
E_USER_WARNING );
}
}
test( "incorrect value" );
?>