自从我在IIS中使用PHP以来,第一次很长时间,但是当我遇到这条线路时,我遇到了一些僵局
if($this->debug) var_dump($this->_handle->error . " L" . debug_backtrace()[0]["line"]);
在我的Debian开发框中 - 这将完美地工作(尽管不是世界上最好的编码风格)
但是在运行PHP5.3 + IIS 7 + FastCGI的Server 2008 R2上,它会抛出一个解析错误
Parse error: syntax error, unexpected '[' in C:\inetpub\linkfinder\dev\dbhandler.php on line 94
我的PHP.ini通过对它们运行diff
在两个框之间相似。
我今天也将在整个项目中修改代码以摆脱这种编码风格,但我感兴趣的是,这是否是IIS中常见的PHP限制,还是我错过了配置设置?
答案 0 :(得分:0)
您正在尝试执行函数数组解除引用,这是latest feature(s) of PHP 5.4,但在PHP 5.3上不可用。
你需要像这样重写才能工作..
<?php
if($this->debug) {
$backtrace = debug_backtrace();
var_dump($this->_handle->error . " L" . $backtrace[0]["line"]);
}
?>