Nginx + PHP:当我尝试在包含的文件中调用函数时,脚本死了
Posted
技术标签:
【中文标题】Nginx + PHP:当我尝试在包含的文件中调用函数时,脚本死了【英文标题】:Nginx + PHP: When I try to call a function in an included file the script dies 【发布时间】:2014-08-04 07:13:58 【问题描述】:我有一个安装了 nginx 而不是 Apache 的新服务器。在该服务器上,我有一个 functions.php 脚本,其中包含我的代码中常见的 PHP 函数列表。我的代码如下所示:
<?php
ini_set('error_reporting', E_ALL);
echo "1";
include_once('../functions.php');
echo "2";
echo getHelloWorld(); // this is found in functions.php, simply returns "hello world"
echo "3";
但是,当我在浏览器上点击该页面时,打印的都是12
,这表明两件事:
-
脚本在尝试调用
getHelloWorld()
和时死了
错误报告似乎什么也没做
我尝试了各种不同类型的错误报告,但均未成功(如在此处找到:http://www.php.net//manual/en/function.error-reporting.php),并且我还(多次)确认getHelloWorld()
函数拼写正确、无错误等.
我对 Nginx 很陌生,所以如果有人能给我任何关于可能发生的事情的线索,我将不胜感激。谢谢!
【问题讨论】:
您应该检查错误日志或尝试直接在脚本中显示错误:ini_set('display_errors',1);
老实说,我认为这是 ini_set('error_reporting', E_ALL);
应该做的。这就是我凌晨 2 点编码所得到的...
不,您只是设置错误报告的级别/记录的内容,但“标准”错误报告是针对错误日志,而不是针对屏幕。
如果您想提交它作为答案,我会接受。它引导我解决了这个问题(导入文件中的简单错字),现在解决了其他问题!谢谢!
【参考方案1】:
使用ini_set('error_reporting', E_ALL);
,您可以设置错误报告的级别/记录的内容。
如果你想在你的脚本中显示错误,你需要设置:
ini_set('display_errors',1);
否则错误将仅记录到错误日志中(通常...)。
【讨论】:
以上是关于Nginx + PHP:当我尝试在包含的文件中调用函数时,脚本死了的主要内容,如果未能解决你的问题,请参考以下文章