相关疑难解决方法(0)

如何在PHP中获取有用的错误消息?

我觉得用PHP编程非常令人沮丧.我经常尝试运行脚本,然后再回一个空白屏幕.没有错误消息,只是空屏幕.原因可能是一个简单的语法错误(错误的括号,缺少分号),或者函数调用失败,或其他完全错误.

弄清楚出了什么问题是非常困难的.我最终评论出代码,在任何地方输入"echo"语句等等,试图缩小问题范围.但肯定有一个更好的方法,对吗?

那么,有没有办法让PHP产生像Java那样有用的错误信息呢?任何人都可以推荐良好的PHP调试技巧,工具和技术?

php debugging error-handling

563
推荐指数
28
解决办法
57万
查看次数

如何让PHP显示错误?(我添加了ini_set和error_reporting,但只提供了500个错误)

所以,我当前的网页上确实没有任何错误,但我希望能够在弹出时看到错误,而不是HTTP 500错误页面.我google了一下,并认为添加这两行将解决所有问题.

ini_set('display_errors', 'On');
error_reporting(E_ALL);
Run Code Online (Sandbox Code Playgroud)

注意:我无法访问php.ini文件,因为我正在使用我的学校帐户的服务器.

所以我在页面顶部介绍了一个bug(在$ buggy之后没有分号):

<?php 
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$buggy

$x = 4 + 2;
...
Run Code Online (Sandbox Code Playgroud)

但是,我只是收到服务器错误:

"该网站在检索http://mywebpage.com/时遇到错误.可能是因为维护失败或配置不正确."

有任何想法吗?

编辑:

我重新配置了我的代码:

<?php 
include_once 'database/errorSettings.php';
?>
<?php 

$buggy // whoops
$x = 4 + 2;
...
Run Code Online (Sandbox Code Playgroud)

errorSettings.php如下:

<?php
    ini_set('display_errors', 'On');
    error_reporting(E_ALL);
?>
Run Code Online (Sandbox Code Playgroud)

但它仍然无效...错误的重新配置方式?

html php debugging

33
推荐指数
3
解决办法
13万
查看次数

PHP没有显示任何类型的错误

我家里有一台PHP服务器用于开发.它正在运行:

Ubuntu 9.10
Apache 2.2.12
PHP 5.3.2-0.dotdeb.1
MySql 5.0.7-dev
Run Code Online (Sandbox Code Playgroud)

目前php.ini中显示错误的设置是:

display_errors = on
error_reporting = E_ALL
Run Code Online (Sandbox Code Playgroud)

但是我的php脚本中没有看到任何错误.同样非常奇怪的是phpinfo()告诉我这个:

display_errors Off
Run Code Online (Sandbox Code Playgroud)

我检查了php.ini文件,并多次重启apache服务器,但没有运气.有人知道这是怎么回事吗?

编辑:
当我localy设置这个:

ini_set('display_errors', 'on');
Run Code Online (Sandbox Code Playgroud)

我确实收到错误.

php apache

30
推荐指数
2
解决办法
8万
查看次数

标签 统计

php ×3

debugging ×2

apache ×1

error-handling ×1

html ×1