PHP 5.5升级至8.1遇语法错误:unexpected token 'new'求助
PHP 5.5升级至8.1语法错误排查解决
问题原因
你遇到的语法错误是因为PHP 7.0及更高版本已经彻底移除了& new这种语法。在PHP 5.x中,& new曾用于获取对象引用,但从PHP 7.0开始,new操作符返回的本身就是对象引用,再使用&会直接触发语法解析错误。
修复方案
直接删除赋值语句中的&符号即可,修改后的代码如下:
public function __construct() { include_once 'sdb.php'; $this->db = new sdb; }
额外提示
& new属于PHP历史遗留语法,早在PHP 5.3就已被标记为废弃,升级到8.1必然会触发错误。- 后续升级过程中,建议重点排查这类高版本PHP不再支持的语法,比如
mysql_*系列扩展、magic_quotes配置、ereg系列函数等。
内容的提问来源于stack exchange,提问作者piggywinkle
相关产品推荐
相关产品推荐

