Synfony3控制台:向HelperSet添加自己的帮助程序

时间:2017-09-05 16:16:09

标签: symfony symfony-console

有没有办法将自己的帮助器添加到Symfony3中的控制台HelperSet?

我在文档中找不到任何有用的东西。

1 个答案:

答案 0 :(得分:0)

好的,我按照代码找到了一个简单的解决方案。 :)

我只需添加实现HelperInterface的类,或者扩展抽象Helper类。

$this->getHelperSet()->set(new MyHelper(), 'myhelper');

myhelper课程看起来像那样:

<?php
namespace MyApp\Helper;

use Symfony\Component\Console\Helper\Helper;

class MyHelper extends Helper
{
    /**
     * @param $string
     * @return string
     */
    public function doIt($string) {
        return 'this is your '.$string;
    }

    /**
     * Returns the canonical name of this helper.
     *
     * @return string The canonical name
     */
    public function getName() {
        return 'myhelper';
    }
}

在我的代码中,我可以使用它:

$myhelper = $this->helperSet->get('myhelper');
$myString = $myhelper->doIt('hallo');

:)