在我的项目中,当我尝试安装软件时,在安装的最后一步中遇到了解析错误
解析错误是
解析错误:语法错误,第21行的/path/to/server/subfolder1/projectfoldername/subfolder/filename.php中出现意外的'@'
该文件特定行中的编码为
if(@constant($matches[1][0]) != @$matches[1][0]){
if(!empty(@constant(@$matches[1][0])) & !empty(@$matches[0][0]) & !empty(@$design_m_r[$key])){
$design_m_r[$key] = @str_replace($matches[0][0], constant($matches[1][0]), $design_m_r[$key]);
}
}
我们的网站php版本是php 5.3.28。我试图搜索此错误。但是我对此没有任何解决方案。一些论坛将此错误告知为“这是高级php版本功能。因此不应该支持php 5.3.28版本”。但是当我搜索时,没有版本使用这种类型的功能。
您不能@
像这样使用错误抑制运算符。
来自PHP文档。
@-运算符仅适用于表达式。一个简单的经验法则是:如果可以获取某物的值,则可以在其前面加上@运算符。例如,您可以将其添加到变量,函数并包括调用,常量等。您不能在函数或类定义或条件结构(例如if和foreach等)之前添加它。
另外,仅PHP 5.5允许passing arbitrary expressions
on 。empty
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句