执行 PHP artisan 命令为啥报错了?

我跟着教程执行了php artisan make:controller StaticPagesController命令,结果报错
PHP Parse error: syntax error, unexpected '?' in /Users/sjh/Code/sample/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php on line 233

Parse error: syntax error, unexpected '?' in /Users/sjh/Code/sample/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php on line 233

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

看你的提示应该是你的 PHP 不识别 ? ,查看了下 vendor/laravel/framework/src/Illuminate/Foundation/helpers.php 的 233 行,这里写了 return app('cache')->get($arguments[0], $arguments[1] ?? null); ,所以我猜测是你的 PHP 版本低了, ?? 写法是 PHP 7.0 开始才支持的,并且 Laravel 5.5 也要求必须是 7.0 以上版本

6年前 评论
讨论数量: 6

看你的提示应该是你的 PHP 不识别 ? ,查看了下 vendor/laravel/framework/src/Illuminate/Foundation/helpers.php 的 233 行,这里写了 return app('cache')->get($arguments[0], $arguments[1] ?? null); ,所以我猜测是你的 PHP 版本低了, ?? 写法是 PHP 7.0 开始才支持的,并且 Laravel 5.5 也要求必须是 7.0 以上版本

6年前 评论
lmaster

@broqiang 兄弟,你是怎么做到的?如果遇到这类问题,怎么分析啊,给个思路。。。。

6年前 评论

应该是没有使用 homestead 使用的是 wamp64 或者 其他集成环境,wamp64 默认在win10 环境变量里 php版本是5.6 改环境变量后才能使用 laravel5.5 的 artisan , 不过我更加好奇的是 如果php版本不对 楼主是怎么通过composer 下载laravel5.5的

6年前 评论

首先注意到这是一个语法错误,并出现在框架的helpers文件中,查看该出,并找到相关代码,如果你熟悉PHP版本更新之后发生什么更改的话,直接就能解决。

6年前 评论
万能小黄人

看看自己php版本 php -v

6年前 评论

@lmaster 多练习,写代码多了就知道了,以前出现过,再出现类似的就清楚了。

6年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!