我需要有关Symfony 3控制台组件的帮助。
我无法使用它,我的自定义类总是会出现致命错误。
这里是代码:
clhelper.php
#!/usr/bin/env php
<?php
require __DIR__.'/vendor/autoload.php';
use Symfony\Component\Console\Application;
use CLHelper\FilesSorterCommand;
$application = new Application();
$application->add(new FilesSorterCommand());
$application->run();
FilesSorterCommand.php
namespace CLHelper;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
/**
* Files Sorter
*/
class FilesSorterCommand extends Command
{
protected function configure()
{
$this
->setName('files:sort')
->setDescription('Sortiert Dateien mit bestimmter Endung.')
->addArgument(
'extension',
InputArgument::REQUIRED,
'Welche Dateiendung?'
)
->addArgument(
'folder',
InputArgument::OPTIONAL | InputArgument::IS_ARRAY,
'Welche Ordner (Mehrfachangabe möglich)'
);
}
protected function execute(InputInterface $input, OutputInterface $output)
{
$extension = $input->getArgument('extension');
$output->writeln($extension);
}
}
如果我尝试使用php clhelper.php
运行此CL应用程序,则会收到错误消息:
PHP致命错误:Class&#39; CLHelper \ FilesSorterCommand&#39;在第10行的/Users/xyz/Sites/Symfony/clhelper/clhelper.php中找不到
致命错误:Class&#39; CLHelper \ FilesSorterCommand&#39;在第10行的/Users/xyz/Sites/Symfony/clhelper/clhelper.php中找不到
答案 0 :(得分:1)
在@cerad评论之后,我将其添加到我的composer.json并成功:
"autoload": {
"psr-4": {
"CLHelper\\": ""
}
}
现在工作正常。