我一直在试图将一些超级旧的PHP脚本移植到PHP 7.0,这证明是不可能的,因为我无法弄清楚错误是什么!如果我实现了某种语法或解析错误,脚本很乐意向我展示这些,但是当我尝试调用lkasjdfalkjshdfasdF();
时,我无法得到任何错误告诉我我的函数是未定义的(显然未设置)
我尝试过的事情:
这是我的.htaccess
文件与我的脚本
php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag log_errors on
php_value error_log "/var/log/apache2/error.log"
我的脚本
也是如此ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
如果我在其中一行上添加echho 'test';
,则会在页面上显示以下内容,并在错误日志中显示
Parse error: syntax error, unexpected ''test'' (T_CONSTANT_ENCAPSED_STRING) in /domains/stupidphpscripts.com/public_html/lib/dumbfile.php on line 200
如果我在其中一行上添加echo asdfasdf();
,我没有输出,错误日志中没有任何内容。
我甚至写了这个愚蠢的功能
$DebugPointCointer = 0;
function DebugPoint() {
global $DebugPointCointer;
echo "Debug point $DebugPointCointer on line " . debug_backtrace(1)[0]['line'] . "\n";
$DebugPointCointer++;
}
所以我可以确保脚本在我怀疑的地方失败了,但老实说,这些信息并没有真正帮助我。
还有什么可以尝试的?
答案 0 :(得分:-1)
E_ALL是不够的。
使用:
error_reporting(-1);
//开发环境中的所有和未来(仍然没有补充的功能)!
你真的在正确的主机上运行吗?
主脚本是否有任何ats“@” - > @functionToCall()包含了什么??