有没有办法回应通过json执行脚本期间发生的语法错误和其他php错误?
假设我有一个通过JQuery ajax
提交数据的登录表单。通过邮寄方式。
在我的php文件中,我得到像$_POST['username']; $_POST['password'];
这样的值。
然后检查细节是否正确,如果细节错误,则回显json编码的成功消息或错误消息。
到那时,一切都很顺利。
现在,如果我有一个语法错误或来自php的任何类型的错误说我没有在其收集路径中正确包含所需文件我没有得到任何warning :
或fatal error:
我会得到如果不使用json将数据发送回我的页面,则显示在我的页面上。
这使调试变得困难。
我尝试使用try{//code}catch (EXEPTION $e)
然后将$e->message();
作为json编码消息的一部分返回到我的页面,但它仍然无法回显错误。
有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
不是尝试将PHP错误记录到JavaScript并将其输出到那里,而是更容易观察错误日志。您可以在单独的窗口中打开它,并让它自动输出附加到日志文件的任何新错误。
在Linux或Mac上打开终端并运行
tail -f /var/log/apache2/error.log
// Or
tail -f /var/log/httpd/error_log
// Depending on your installation, error log may be in a different location
在Windows上,打开PowerShell(Windows中默认包含)并运行
Get-Content C:\Path\To\error.log -Last 10 -Wait
// Location of the log-file is highly dependent on the used installation
请注意,在生产环境中,建议您将所有PHP错误信息隐藏到浏览器中(仅限于error.log,最多告诉访问者'哎呀,出错了'),所以写这个额外的错误处理代码只是为了开发。