Laravel解析错误:语法错误,意外的T_CLASS,在工匠中期待T_STRING

时间:2018-02-13 00:21:40

标签: php laravel laravel-5 laravel-5.2 laravel-5.3

我检查了我的php版本:

  

PHP 7.0.27(cli)(建于:2018年1月23日09:07:32)(NTS)
  版权所有(c)1997-2017 PHP小组
  Zend Engine v3.0.0,版权所有(c)1998-2017 Zend Technologies

Image php Version here

但这是执行cron作业时出现的错误

  

解析错误:语法错误,意外的T_CLASS,期待T_STRING或T_VARIABLE或' $'在 / path_to_project / artisan 31 行中   X-Powered-By:PHP / 5.3.29   内容类型:text / html

我用它来测试这段代码

<?php 
class Foo{}
echo Foo::class;

?>

输出为:Foo

工匠文件

#!/usr/bin/env php
<?php
require __DIR__.'/bootstrap/autoload.php';

$app = require_once __DIR__.'/bootstrap/app.php';


$kernel = $app->make(Illuminate\Contracts\Console\Kernel::class);

$status = $kernel->handle(
$input = new Symfony\Component\Console\Input\ArgvInput,
new Symfony\Component\Console\Output\ConsoleOutput
);

$kernel->terminate($input, $status);

exit($status);

我这样运行:

* * * * * php /path_to_project/artisan schedule:run >> /path_to_project/log.txt
* * * * * php-cli -q /path_to_project/artisan  schedule:run >> /path_to_project/log.txt

如何解决此错误?

1 个答案:

答案 0 :(得分:1)

你如何运行你的代码?无论运行什么,它都使用旧的PHP版本。

它就在这里说:

  

php-cli

查看有关如何修复它的类似问题: Laravel parse error: syntax error, unexpected T_CLASS, expecting T_STRING or T_VARIABLE

此答案还建议使用php来运行您的代码,而不是0 30 14 1,2,3,4,5,6,7,8,9,10,11 1/1 ? *https://stackoverflow.com/a/41776870/7417402 这可以解释为什么你会得到不同的版本。