如何在firefox的网页上显示php错误消息?

如何在firefox的网页上显示php错误消息?,php,error-handling,Php,Error Handling,下面是我在/var/www/read.php中的简单代码文件: error_reporting(E_ALL); <?php echo hello" ?> 但在firefox中输入127.0.0.1/read.php时,网页中没有错误报告 我在php.ini中设置了如下值: error_reporting = E_ALL & ~E_NOTICE display_errors = On 我无法使用以下命令重新启动apache2: service apac

下面是我在/var/www/read.php中的简单代码文件:

error_reporting(E_ALL);
<?php
    echo hello"
?> 
但在firefox中输入
127.0.0.1/read.php
时,网页中没有错误报告

我在php.ini中设置了如下值:

error_reporting = E_ALL & ~E_NOTICE    
display_errors = On  
我无法使用以下命令重新启动apache2:

service apache2 restart
这是我的phpinfo消息。 在我的read.php文件中添加两行是没有用的,firefox中没有报告错误消息。如何修复它?我的系统是debian7+php

<?php
    ini_set('display_errors', 1);
    error_reporting(E_ALL);
    echo hello"
?> 

find  /  -name  'php.ini'
/etc/php5/apache2/php.ini
/etc/php5/cli/php.ini

您应该看到Apache读取的是哪个php.ini。控制台通常使用与Apache不同的php.ini

您可以
phpinfo()
并查看Apache正在读取哪个配置文件

但是,在
read.php
文件的开头添加以下行:

init_set("display_errors", 1);

首先,应将
error\u reporting()
函数移动到
标记中

在一个典型的设置中通常有两个php.ini文件(一个由Web服务器使用,另一个由命令行使用)

在unix发行版上,它通常位于
/etc/php
文件夹下的某个位置,例如
/etc/php/apache2/php.ini

要确定Web服务器为PHP加载了什么配置文件,请执行一个简单的
phpinfo()
在网页中,只需搜索
配置文件

如果您修改了websever使用的配置,请确保随后重新启动Apache,以便它加载新配置

如果要以编程方式强制执行设置,可以使用
ini\u set
函数

在您的情况下,如果您想在页面上看到任何错误

<?php

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

foobar();

将此代码添加到php文件中

// Report all PHP errors
error_reporting(-1);
使用
错误报告(1)
错误报告(真)并确保没有禁用任何与错误报告相关的内容

//To show errors
ini_set('display_errors', 1);
error_reporting(E_ALL);

//To hide error 
ini_set('display_errors', 0);

您还可以在普通php文件或工作文件中设置此选项。

当错误与语法相关时,php有一个令人讨厌的习惯,即显示神秘的白色屏幕。要解决此问题,可以使用include函数:

<?php
    ini_set('display_errors',1); 
    error_reporting(E_ALL);
    include "/var/www/read.php";
?> 
从你完全控制这个系统的事实来看,我想说你应该知道你是否开启了安全模式。此外,我还看到您尝试将上述ini指令设置为“不可用”(这是由于我在答案开头解释的语法问题)

下面是一些可能感兴趣的进一步阅读:


听起来这些php配置选项没有激活。您在更改php环境(通常是http服务器)后没有重新启动它们,或者php引擎使用的配置文件与您修改的配置文件不同。您可以使用phps
phpinfo()
函数检查:您可以发布您编辑的php.ini文件的路径吗?/etc/php5/apache2/php.ini和/etc/php5/cli/php.ini您被修改了/etc/php5/apache2/php.ini或/etc/php5/cli/php.ini?您甚至尝试过谷歌搜索吗?在这里看到9次投票的答案:你的错误报告将永远不会被调用,因为由于解析错误,脚本没有执行。我没有必要在我的php文件中添加这两行,错误报告仍然没有显示在我的firefox网页上。我没有必要添加init_集(“display_errors”,1);进入我的read.php。
<?php
    ini_set('display_errors',1); 
    error_reporting(E_ALL);
    include "/var/www/read.php";
?> 
<?php
    error_reporting(E_ALL);
    echo "hello";
?> 
<?php
    ini_set('display_errors',1); 
    error_reporting(E_ALL);
    echo "hello world";
    unknownfunction() // this will throw errors
?>