Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从PHP获取PHP错误日志_Php_Logging_Error Handling - Fatal编程技术网

从PHP获取PHP错误日志

从PHP获取PHP错误日志,php,logging,error-handling,Php,Logging,Error Handling,是否有PHP函数或其他方式将PHP错误日志获取为字符串 我需要这个,因为我无法访问我在其他人服务器上运行的站点的错误日志。-他主动提出把错误日志发电子邮件给我,但这并不方便 有没有办法将错误日志输出到php页面 更新 我现在意识到,查看整个服务器的错误日志对我来说并不是真正的事情,但是,我知道你可以这样做,通过电子邮件向自己发送一个手动错误日志呼叫: error_log('A really bad error',3,'me@myemail.com'); 是否可以将页面配置为通过电子邮件向您发

是否有PHP函数或其他方式将PHP错误日志获取为字符串

我需要这个,因为我无法访问我在其他人服务器上运行的站点的错误日志。-他主动提出把错误日志发电子邮件给我,但这并不方便

有没有办法将错误日志输出到php页面


更新

我现在意识到,查看整个服务器的错误日志对我来说并不是真正的事情,但是,我知道你可以这样做,通过电子邮件向自己发送一个手动
错误日志
呼叫:

error_log('A really bad error',3,'me@myemail.com');

是否可以将页面配置为通过电子邮件向您发送错误,而不是显示错误?

在安全性差的服务器上,可以。但在大多数服务器上有两个用户:apache和[您]。您无权访问服务器日志,因为它们属于apache用户(或您使用的任何服务器)

但是,您可能可以尝试:

echo file_get_contents('/var/log/httpd/error_log');
注意:这是基于RedHat的apache服务器上的默认位置。可能会有所不同

更新以反映更新后的问题
不,您不能使用
错误日志查看错误日志-这是一个由Web服务器处理的单向过程。它只写日志,但您无法读取

您可能会通过以下方式显示错误:

ini_set('display_errors', 'On');
error_reporting(E_ALL);

您甚至可以使用来处理所有警告和通知(例如,邮寄它们)。但这几乎是您所能做的。

不是一个很好的解决方案…,但是当您知道错误日志文件的路径时,您可以使用
文件获取内容。
查看php.ini设置。嗨,我在debian服务器上-刚刚尝试过,但得到了“不允许操作”,那么它是一个安全的服务器;-)让那个人把日志邮寄给你。好的,你能看看我更新的问题吗?非常感谢,我想我会使用
set\u error\u handler
-我想要这个的原因是我要提交给苹果的应用程序的web服务,如果在我提交应用程序和苹果公司批准应用程序之间的任何时间服务出现故障,我需要马上知道——干杯。