在PC

时间:2016-04-28 16:31:34

标签: php debugging

我是PHP新手。我使用Firefox在我的电脑上运行file.php,但我不知道怎么看错误。如果我在PC上有这个文件而不是在服务器上,我可以添加什么来查看它?

也许这个:

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

还是仅适用于Apache?

我没有尝试任何东西,因为我不知道如何解决它。

这是我的file.php

<?php
 include('wrapper.php');
 $apikey = "xxx7d7391d1e68e9680e6";
 voxmail_init($apikey);
 voxmail_user_subscribe(array('mail' => 'xxxxx@gmail.com','privacy' => 1));
?>

此文件使用api简报服务(代码 - 用于服务协助 - 没问题),voxmail_user_subscribe在简报中注册电子邮件地址。 wrapper.php是file.php的同一文件夹中的文件,用于此服务的使用API​​。

在这个wrapper.php中包含其他文件xmlrpc.inc(也在同一个文件夹中)

现在,当我在浏览器中运行file.php时,我唯一看到的是:

**'xxxx@gmail.com','privacy' => 1));?>**

但是助理服务员尝试了我的代码并且工作......他让我显示错误日志,但我不知道这个日志在哪里。

2 个答案:

答案 0 :(得分:1)

这些指令可以在许多不同的地方设置,如Runtime Configuration所述。您需要了解不同的语法:

  • 如果从PHP代码设置它们,则必须编写有效的PHP代码,例如:

    php.ini
  • 如果您在PHP配置文件(.user.inierror_reporting = E_ALL display_errors = On )中设置它,则必须使用有效的* .ini语法:

    httpd.conf
  • 如果您在Apache配置文件(.htaccessphp_value error_reporting E_ALL php_flag display_errors On )中设置它,则必须使用有效的apache语法:

    1/0;

值得注意的是,无法在PHP代码中设置阻止PHP代码运行的错误(例如解析错误)。

我的建议是配置本地系统范围的文件以进行开发(显示所有错误,不记录任何内容)并配置项目以进行双重配置(在开发中显示,登录生产)。

回答更新的问题:

  1. 无法看到您的代码触发错误和通知的任何明显原因。你确定吗?您是否尝试使用 触发tr.removeChild(tr) 之类的内容?

  2. 如果您可以在浏览器中看到PHP代码,您的代码根本没有运行

答案 1 :(得分:1)

实施例

error_log("You messed up!", 3, "/var/tmp/my-errors.log");

您可以使用

error_log - 在某处发送错误消息