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

syntax error, unexpected '?' in my laravel app

我正在尝试将共享主机用于 运行 可能 laravel 应用程序,但它在 error_log

中给了我这个错误

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

public 子域中的文件夹名称为 gardenfilm.studioaleph.com

错误日志说:

[11-May-2019 07:18:08 UTC] PHP Parse error: syntax error, unexpected '?' in /home/studioaleph/host/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php on line 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

你好。当您使用 PHP < 7.0 时会发生此错误。你必须使用 PHP > 7.0.

您可以阅读更多相关内容 here。它被称为Null coalescing operator

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