如何在firefox的网页上显示php错误消息?
下面是我在/var/www/read.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
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引擎使用的配置文件与您修改的配置文件不同。您可以使用phpsphpinfo()
函数检查:您可以发布您编辑的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
?>