Laravel 5.5服务器部署遇语法错误:Unexpected 'const'异常求助
解决Laravel 5.5安装时的
Parse error: unexpected 'const'错误 嘿,我之前也碰到过类似的问题,这个错误大概率是PHP版本不兼容或者代码里const的写法不对导致的,给你几个排查方向:
1. 先确认PHP版本是否达标
Laravel 5.5明确要求PHP版本至少是7.0.0,如果你的服务器还在跑PHP 5.x,那肯定会出这个错——毕竟Laravel 5.5已经开始用PHP 7的特性了,PHP 5.x对某些语法的支持和PHP 7不一样。
你可以在服务器终端敲这个命令看当前PHP版本:
php -v
要是版本低于7.0,赶紧升级到7.0以上(个人推荐7.1或者更高,稳定性更好)。
2. 检查代码里的const是不是写错地方了
如果PHP版本没问题,那大概率是你自己的代码或者引入的第三方包里有错误的const用法:
- 记住,const不能在方法或者函数内部定义!比如下面这种写法就是错的:
正确的姿势是把const放在类的全局作用域:public function index() { const STATUS = 'active'; // 这里会报错!const不能放方法里 }class HomeController extends Controller { const STATUS = 'active'; // 这才是正确位置 public function index() { // 用的时候这样调用 echo self::STATUS; } } - 另外也检查下有没有拼写错误,比如不小心把变量的
$和const搞混,或者const定义完没加分号这类低级错误。
3. 清缓存+重装依赖试试
有时候旧的缓存文件也会搞事情,你可以试试这两步:
- 删掉Laravel的缓存文件:
rm -rf bootstrap/cache/* - 重新安装Composer依赖:
composer install --no-dev
要是还解决不了,把报错的具体文件路径和对应的代码片段贴出来,大家就能更精准帮你定位问题啦~
内容的提问来源于stack exchange,提问作者Arza Aldi
相关产品推荐
相关产品推荐

