【问题标题】:How to fix "PHP Parse error: syntax error, unexpected '=' in /var/www/.../vendor/laravel/RoutesRequests.php on line 156"如何修复“PHP Parse 错误:语法错误,第 156 行 /var/www/.../vendor/laravel/RoutesRequests.php 中的意外 '='”
【发布时间】:2019-12-13 03:25:38
【问题描述】:

PHP 解析错误:

语法错误,出现意外的“=” /var/www/.../api/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php 在第 156 行

我对 Lumen 进行了全新安装。我最近将 php 升级到 7.3,但 composer 仍然较旧。

【问题讨论】:

  • 在未来和历史上向我们展示这条线。它正在使用数组解构:[$method, $pathInfo] = $this->parseIncomingRequest($request);
  • 是的,对不起,那是行。你有什么建议吗?我目前仍然遇到该错误,并且已将 php 和 composer 更新到最新的稳定版本
  • 当您访问服务器上的 Lumen 安装时会发生这种情况,而不是当您运行 composer 命令时,对吧? Web 服务器可能安装了多个版本,但仍未使用正确的 PHP 版本。在index.php中,将phpinfo();放在某处,看PHP版本是否为7.1+
  • 没错。当我运行时,我看到 php 版本确实是 7.3.x。
  • 那个错误没有多大意义,因为 7.1+ 支持数组解构。可能是缓存问题,但不太可能。如果您将[$a, $b] = [1, 2]; echo $a, $b; die; 复制到 index.php 中,此命令是否会将12 打印到浏览器的屏幕上?

标签: laravel lumen


【解决方案1】:

PHP 更新到 7.3 或将 Lumen 降级到 7.9

【讨论】:

    【解决方案2】:

    该错误似乎与 PHP 版本问题有关。因此,我建议您检查触发错误的站点中使用的 php 版本。 无论如何,您希望更新本地作曲家,请在终端中尝试使用此命令

    composer self-update
    

    【讨论】:

    • 所以我已将作曲家更新到 1.9,但仍然遇到同样的错误。还有其他建议吗?我需要重新启动我的 ubuntu 服务器吗?
    • 对不起,我已经回答了与更新作曲家有关的问题,而不是 PHP。我仍然认为引发该错误的是PHP版本的问题。您能否验证您的 cli 版本是否与 php 文件版本相同?您应该在控制台中运行 php -v 以获得 cli 版本,并在从浏览器呈现的文件中运行 <?php phpinfo(); ?>
    猜你喜欢
    • 2023-03-05
    • 2019-10-23
    • 1970-01-01
    • 2012-05-16
    • 2014-02-19
    • 2012-11-03
    • 1970-01-01
    • 2018-05-13
    相关资源
    最近更新 更多