note 112348 added to function.set-error-handler

From: Date: Tue, 04 Jun 2013 22:57:01 +0000
Subject: note 112348 added to function.set-error-handler
Groups: php.notes 
Request: Send a blank email to php-notes+get-195047@lists.php.net to get a copy of this message
This might be handy if you don't want your clients to see the errors, and you do want to be one step ahead of them. It emails you the errors even if it's a parse error. set_error_handler() doesn't work for what I wanted. <?php ini_set('log_errors',TRUE); ini_set('error_log','tiny_uploads/errors.txt'); if($_SERVER['REMOTE_ADDR'] != "YOUR IP ADDRESS"){ ini_set('display_errors',false); } function byebye(){ $dir = dirname(__FILE__); if(file_exists($dir."/tiny_uploads/errors.txt")){ $errors = file_get_contents($dir."/tiny_uploads/errors.txt"); if(trim($errors)){ $head = "From: php_errors@".str_replace('www.','',$_SERVER['HTTP_HOST'])."\r\n"; $errors .= "---------------------------------------------\n\n"; $errors .= "\n\nServer Info:\n\n".print_r($_SERVER, 1)."\n\n"; $errors .= "---------------------------------------------\n\n"; $errors .= "\n\nCOOKIE:\n\n".print_r($_COOKIE, 1)."\n\n"; $errors .= "---------------------------------------------\n\n"; $errors .= "\n\nPOST:\n\n".print_r($_POST, 1)."\n\n"; $errors .= "---------------------------------------------\n\n"; $errors .= "\n\nGET:\n\n".print_r($_GET, 1)."\n\n"; mail("YOUR@EMAIL.COM","PHP Error ".$_SERVER['HTTP_HOST']."", $errors , $head); $fp = fopen($dir."/tiny_uploads/errors.txt","w+"); fputs($fp, ""); fclose($fp); } } } register_shutdown_function("byebye"); ?> ---- Server IP: 69.147.83.199 Probable Submitter: 68.149.179.51 ---- Manual Page -- http://php.net/manual/en/function.set-error-handler.php Edit -- https://master.php.net/note/edit/112348 Del: integrated -- https://master.php.net/note/delete/112348/integrated Del: useless -- https://master.php.net/note/delete/112348/useless Del: bad code -- https://master.php.net/note/delete/112348/bad+code Del: spam -- https://master.php.net/note/delete/112348/spam Del: non-english -- https://master.php.net/note/delete/112348/non-english Del: in docs -- https://master.php.net/note/delete/112348/in+docs Del: other reasons-- https://master.php.net/note/delete/112348 Reject -- https://master.php.net/note/reject/112348 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#195047) next »