【发布时间】:2019-03-26 20:17:10
【问题描述】:
您好,我知道这个问题已经得到了很多答案,但如果我有较新版本的 php 并且我仍然收到此错误,则没有答案
解析错误:语法错误,意外的“?”
这个错误来自我在 symfony 中的自动加载器。
我的作曲家 .json 和 .lock 都说 7.1.3
"require": {
"php": "^7.1.3",`
我尝试获取 phpinfo..但由于某种原因也无法正常工作
phpinfo();
die();
这不会返回任何东西。
这里是 smyfonys index.php,错误出现在第二个和第三个 if 语句中。
<?php
use App\Kernel;
use Symfony\Component\Debug\Debug;
use Symfony\Component\HttpFoundation\Request;
require dirname(__DIR__).'/config/bootstrap.php';
if ($_SERVER['APP_DEBUG']) {
umask(0000);
Debug::enable();
}
if ($trustedProxies = $_SERVER['TRUSTED_PROXIES'] ?? $_ENV['TRUSTED_PROXIES'] ?? false) {
Request::setTrustedProxies(explode(',', $trustedProxies), Request::HEADER_X_FORWARDED_ALL ^ Request::HEADER_X_FORWARDED_HOST);
}
if ($trustedHosts = $_SERVER['TRUSTED_HOSTS'] ?? $_ENV['TRUSTED_HOSTS'] ?? false) {
Request::setTrustedHosts([$trustedHosts]);
}
$kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);
我发现,在我的带有 xampp 和 7.3.1 的 Windows 电脑上,我的服务器可以正常工作。
Om 我的带有 MAMP 的 mac 和 7.1.3 它不起作用..
这个想法是 json 和 phpstorm 都设置为 7.1
所以这就是为什么我很困惑....
有什么想法吗?
谢谢。
【问题讨论】:
-
你检查过它真的是用7.1执行的吗?
-
唯一的解释是您的应用程序没有使用 PHP 7 提供服务。您究竟是如何为网站提供服务的?
-
如何做到这一点? @kuh-chan ...我的意思是我尝试使用 phpinfo
-
看起来像
7.1.3的 MAMP 实际上并没有运行7.1.3但更低的东西,不支持空合并运算符。也许您可以使用 phpversion() 函数在 index.php 中输出 php 的版本。var_dump(phpversion()) -
如何执行文件?
标签: php symfony null-coalescing-operator