首先让我们开始说我在Docker容器中运行整个项目,这意味着我没有在主机上安装任何东西。
我正在尝试调试Symfony命令,这是一种CLI脚本,区别在于它不是php script.php
而是bin/console command
。
console
文件里面有什么内容?见下文:
#!/usr/bin/env php
<?php
use Symfony\Bundle\FrameworkBundle\Console\Application;
use Symfony\Component\Console\Input\ArgvInput;
use Symfony\Component\Debug\Debug;
set_time_limit(0);
/** @var Composer\Autoload\ClassLoader $loader */
$loader = require __DIR__.'/../app/autoload.php';
$input = new ArgvInput();
$env = $input->getParameterOption(['--env', '-e'], getenv('SYMFONY_ENV') ?: 'dev');
$debug = getenv('SYMFONY_DEBUG') !== '0' && !$input->hasParameterOption(['--no-debug', '']) && $env !== 'prod';
if ($debug) {
Debug::enable();
}
$kernel = new AppKernel($env, $debug);
$application = new Application($kernel);
$application->run($input);
我安装并配置了Xdebug,我也配置了phpStorm,这意味着使用浏览器(以及启用/禁用的扩展名)我可以调试我想要的任何内容。
通常,这是从控制台执行命令的方式(bash):
<path_to_symfony>/bin/console quote:notify -d 120 -e <some_email>
选项在这里是可选的,这意味着我可以调用:
<path_to_symfony>/bin/console quote:notify
它将双向运作。 我正在使用here中的文档来调试这样的命令。现在我正在设置IDE来调试Symfony命令:
Run/Debug Configuration
SF Command
bin/console
quote:notify
(这是我的命令)但IDE首先说:Error: file not specified or invalid
然后当我尝试执行命令时它说它不是有效的配置。 (还要注意小&#34; X&#34;这应该意味着什么是错的)
我在这里缺少什么?我可以在这里得到一些帮助吗?我使用的是最新版本的phpStorm。