我正在尝试使用共享主机来运行可能是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
答案 0 :(得分:0)
萨拉姆。当您使用PHP <7.0时,会发生此错误。您必须使用PHP> 7.0。
您可以阅读有关此here的更多信息。称为Null coalescing operator
。
Laravel 5.8的系统要求表明您必须使用PHP> = 7.1.3。 Laravel documentation。