语法错误,意外的“?”在我的laravel应用程序中

时间:2019-05-11 07:33:37

标签: php laravel laravel-5.2

我正在尝试使用共享主机来运行可能是laravel应用,但它为我带来了error_log中的此错误

我称为主机的目录中的laravel文件

子域中的公用文件夹,名称为gardenfilm.studioaleph.com

错误日志说:

  

[2019年5月11日7:18:08 UTC] PHP解析错误:语法错误,意外   '?'在   /home/studioaleph/host/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php   在第500行

if (! function_exists('factory')) {
    /**
     * Create a model factory builder for a given class, name, and amount.
     *
     * @param  dynamic  class|class,name|class,amount|class,name,amount
     * @return \Illuminate\Database\Eloquent\FactoryBuilder
     */
    function factory()
    {
        $factory = app(EloquentFactory::class);

        $arguments = func_get_args();

        if (isset($arguments[1]) && is_string($arguments[1])) {
            return $factory->of($arguments[0], $arguments[1])->times($arguments[2] ?? null);
        } elseif (isset($arguments[1])) {
            return $factory->of($arguments[0])->times($arguments[1]);
        }

        return $factory->of($arguments[0]);
    }
}

这行是问题:

return $factory->of($arguments[0], $arguments[1])->times($arguments[2] ?? null);

PHP版本5.6.32

Laravel框架5.8.16

1 个答案:

答案 0 :(得分:0)

萨拉姆。当您使用PHP <7.0时,会发生此错误。您必须使用PHP> 7.0。

您可以阅读有关此here的更多信息。称为Null coalescing operator

Laravel 5.8的系统要求表明您必须使用PHP> = 7.1.3。 Laravel documentation