题
基本上我有我的网站,我想任何PHP erorrs,警告等单页被在一封电子邮件中每一个脚本运行时送给我的。
编辑:这必须是放置在页面上的代码,而不是一个编辑到php_ini或类似的东西
编辑2:这需要捕捉所有错误和一个电子邮件在脚本结束
将所有的错误解决方案
你需要安装一个错误处理程序和的寄存器关闭功能以做的邮件。在一个非常简化的示例,可以是这个样子:
<?php
$__errors = array();
function my_error_handler($code, $message, $file, $line) {
global $__errors;
$__errors[] = sprintf('"%s" (%s line %s)', $message, $file, $line);
}
set_error_handler( 'my_error_handler', E_ALL );
function send_error_log() {
global $__errors;
if ( count( $__errors ) > 0 ) {
foreach ( $__errors as $error ) {
$body . $error . "\n";
}
mail( 'to@example.com', 'error log', $body );
}
}
register_shutdown_function( 'send_error_log' );
?>
其他提示
如果你正在试图赶上与代码的问题,它可能是更有效的,只是看你的服务器错误日志(假设你有机会)。如果您在摘要形式想这些,你可以写一个cron作业每天(或其他)邮寄你。
如果您没有访问错误日志,然后写一个错误处理程序,并使用set_error_hander()
是你最好的选择。我仍然认为有错误处理程序写入到一个日志文件,而不是向您发送电子邮件。如果您的网站获得的所有邮箱的任何流量将超过满在任何时间。
你能做的最好的可能是写一个错误处理程序,并设置与的set_error_han dler。然而,这不会处理全部可能的错误。
可以创建用于 set_error_handler()
不隶属于 StackOverflow