当我尝试执行:symfony console d:d:c
要启动我的数据库,我必须:
解析错误:语法错误,C:\Users\user\my_project_name\vendor\autoload_runtime.php 第 21 行出现意外“?”退出状态 255
这是 autoload_runtime 文件:
// autoload_runtime.php @generated by Symfony Runtime
if (true === (require_once __DIR__.'/autoload.php') || empty($_SERVER['SCRIPT_FILENAME'])) {
return;
}
if (PHP_VERSION_ID < 80000 && in_array(PHP_SAPI, ['cli', 'phpdbg'], true)) {
ob_start();
$app = require $_SERVER['SCRIPT_FILENAME'];
ob_end_clean();
} else {
$app = require $_SERVER['SCRIPT_FILENAME'];
}
if (!is_object($app)) {
throw new TypeError(sprintf('Invalid return value: callable object expected, "%s" returned from "%s".', get_debug_type($app), $_SERVER['SCRIPT_FILENAME']));
}
$runtime = $_SERVER['APP_RUNTIME'] ?? 'Symfony\\Component\\Runtime\\SymfonyRuntime';
$runtime = new $runtime(($_SERVER['APP_RUNTIME_OPTIONS'] ?? []) + [
'project_dir' => dirname(__DIR__, 1),
]);
[$app, $args] = $runtime
->getResolver($app)
->resolve();
$app = $app(...$args);
exit(
$runtime
->getRunner($app)
->run()
);
我不知道问题出在哪里,有人可以帮忙吗?
注意:我在我的 symfony 项目中放置了一个 .php 版本,其中包含我当前的版本,它可以工作。
问题完成了!
答案1
您的 PHP 不理解??
PHP 7 中引入的“空合并运算符”,这意味着您正在使用 PHP 5.x 版本。
Symfony 的当前版本(5.3)需要 PHP 7.2.5 或更高版本。(但 php7.2 已经终止使用,您应该升级到 PHP 7.4 或 8.0)