【问题标题】:Laravel parse error: syntax error, unexpected T_CLASS, expecting T_STRING or T_VARIABLELaravel 解析错误:语法错误,意外的 T_CLASS,期望 T_STRING 或 T_VARIABLE
【发布时间】:2015-11-19 06:01:57
【问题描述】:

安装 laravel 后报错:

解析错误:语法错误,意外的 T_CLASS,在第 50 行的 C:\xampp\htdocs\laravel\public\index.php 中需要 T_STRING 或 T_VARIABLE 或 '$'

【问题讨论】:

  • 我仍然有这个问题,我们不能让我们的 laravel 应用程序上线。我们使用的是 php 5.6。对于 apache 和命令行。 “php -v”给出“5.6”
  • 您创建了密钥吗?

标签: laravel-5


【解决方案1】:

我遇到了同样的错误,但错误出现在 app/User.php 第 10 行。 实际上,第 10 行还可以,但在第 10 行之前,我缺少一些 php 语法。

更正php语法错误后已修复。所以你必须仔细检查第 49 行的 C:\xampp\htdocs\laravel\public\index.php 我确定有问题。试着改正。它将被修复。

【讨论】:

    【解决方案2】:

    Laravel 5.1 使用 ::class property 来获取完全限定类名的字符串表示。您看到的错误是由this line

    引起的
    $kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
    

    此语言功能已在 PHP 5.5 中引入,这是 Laravel 5.1 的要求。您安装的 PHP 版本可能早于 5.5。尝试更新您的 PHP 二进制文件。


    如果您对为什么使用::class 感兴趣,请查看this answer

    【讨论】:

    • 我正在使用 php 5.6.0,但我仍然收到 Parse error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$' in C:\wamp\www\laravelmaster\public\index.php on line 50 ,我从 cmd 中检查了 php -v 并使用 laravel 5.2
    • @151291 您的 php 的 CLI 版本(您使用 php -v 获得的那个)可能与网络服务器使用的不同。将 phpinfo() 放入 PHP 文件并在浏览器中打开它。在那里你应该看到你的服务器使用的实际版本......
    • 嗨,我的 CLI 版本以及 phpinfo 中显示的 PHP 版本是 7.1.22,但我仍然遇到同样的错误。你能帮忙吗?为什么我仍然收到此错误?谢谢
    • @Dhirender - 我知道这是旧的,但对于其他人来说,当我在 use 声明后忘记 ; 时,我也会发生此错误,我正在添加引用类。
    【解决方案3】:

    您的 php 版本太低。 尝试 7.0 或更高版本的 php。

    【讨论】:

      【解决方案4】:

      同样的事情也发生在我身上。我发现 Web 服务器正在使用我的旧 PHP 版本 5。为了解决它,我这样做了 -

      sudo a2dismod php5
      sudo a2enmod php7.0
      sudo service apache2 restart
      

      【讨论】:

      • 这是我的问题,命令行上的php -v使用的是7.1,但服务器仍在php5上
      • 嗨,我的 CLI 版本以及 phpinfo 中显示的 PHP 版本是 7.1.22,但我仍然遇到同样的错误。你能帮忙吗?为什么我仍然收到此错误?谢谢
      【解决方案5】:

      您的 Xampp 上的 PHP 版本低于 Laravel 5.1 doc 中指定的 5.5.9。

      只需卸载您当前的 Xampp 软件并使用此规范 5.6.12 / PHP 5.6.12 在 Apache 网站下载新副本。

      在在线部署 Laravel 5.1 应用期间,不要忘记与您的主机提供商合作,以确保您的主机帐户运行所需的 PHP 版本 (>=5.5.9)。

      【讨论】:

      • 是的版本也可能导致这种情况。但请确保您在服务器、虚拟机或您正在使用的任何东西上获得实际版本
      猜你喜欢
      • 2016-03-05
      • 2018-07-23
      • 2015-03-09
      • 2018-07-25
      • 1970-01-01
      • 2012-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多