当地。错误:语法错误,意外的"?",期望变量 (T_VARIABLE)



我已经在 Ubuntu 16.04.4 上上传了我的 laravel 5.6 项目。 当我上传我的工作项目(API 在邮递员上测试(时,它会返回一个空白响应,并在 url 上显示"此页面不起作用"HTTP 错误 500"。

据我所知,我的项目的php版本与服务器上的版本不同。

我的项目建立在 php 7.1.9 上,服务器 php 版本是 7.1.18

任何形式的帮助或信息都将是有用的。 提前谢谢你

日志:

local.ERROR: syntax error, unexpected '?', expecting variable (T_VARIABLE) {"exception":"[object] (Symfony\Component\Debug\Exception\FatalThr$
[stacktrace]
#0 /var/www/narcodes/vendor/composer/ClassLoader.php(322): Composer\Autoload\includeFile('/var/www/narcod...')
#1 [internal function]: Composer\Autoload\ClassLoader->loadClass('Symfony\\Compone...')
#2 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/RouteCompiler.php(39): spl_autoload_call('Symfony\\Compone...')
#3 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Route.php(284): Illuminate\Routing\RouteCompiler->compile()
#4 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Route.php(261): Illuminate\Routing\Route->compileRoute()
#5 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php(197): Illuminate\Routing\Route->matches(Object(Illuminate\Http\Request), t$
#6 [internal function]: Illuminate\Routing\RouteCollection->Illuminate\Routing\{closure}(Object(Illuminate\Routing\Route), 'api/user')
#7 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Support/Arr.php(175): call_user_func(Object(Closure), Object(Illuminate\Routing\Route), 'api/user')
#8 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Support/Collection.php(657): Illuminate\Support\Arr::first(Array, Object(Closure), NULL)
#9 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php(198): Illuminate\Support\Collection->first(Object(Closure))
#10 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php(164): Illuminate\Routing\RouteCollection->matchAgainstRoutes(Object(Illumin$
#11 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Router.php(619): Illuminate\Routing\RouteCollection->match(Object(Illuminate\Http\Request))
#12 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Router.php(608): Illuminate\Routing\Router->findRoute(Object(Illuminate\Http\Request))
#13 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Router.php(597): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
#14 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(176): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
#15 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(30): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(O$
#16 /var/www/narcodes/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#17 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(151): Fideloper\Proxy\TrustProxies->handle(Object(Illuminate\Http\Request), Obj$
#18 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illumina$
#19 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(31): Illuminate\Routing\Pipeline->Illuminate\Routing$
#20 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(151): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Il$
#21 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illumina$
#22 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(31): Illuminate\Routing\Pipeline->Illuminate\Routing$
#23 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(151): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Il$
#24 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illumina$
#25 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Routing\Pipeline->Illuminate\Routing\$
#26 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(151): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle(Object(Ill$
#27 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illumina$
#28 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(51): Illuminate\Routing\Pipeline->Illuminate\Ro$
#29 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(151): Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Obj$
#30 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illumina$
#31 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(104): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illumina$
#32 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(151): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#33 /var/www/narcodes/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(116): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Il$
#34 /var/www/narcodes/public/index.php(55): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#35 {main}
"}

此错误是因为您的 php 服务器版本可能与您执行 php -v 时看到的版本不同。

检查这一点的正确方法是在服务器端而不是在 CLI 上执行 php 信息。

如果您需要在 apache 上启用 php 7.2,这是 ubuntu 上的命令

首先禁用旧的 PHP 版本

sudo a2dismod php7.0

启用新版本

sudo a2enmod php7.2

最新更新