0

次の構造の小さなプロジェクトがあります。

 -- bin
    -- init.php
 -- app
    -- all app directories here
 -- tests
 -- temp

composer を使用して symfony2 コンソールバンドルをインストールしました。

{
    "require": {
        "symfony/console": "2.3.*"
    }
}

そして、バンドルをベンダー ディレクトリにインストールします。したがって、次の構造になります。

 -- bin
    -- init.php
 -- app
    -- all app directories here
 -- tests
 -- temp
 -- vendor
    -- composer
    -- symfony
    -- autoload.php

bin/init.php で symfony コンソールを使用するように構成するにはどうすればよいですか。基本的に、bin/init.php から呼び出すことができる単一のカスタム コマンドを作成したい

4

1 に答える 1

0

良い出発点は常に、コンソール コンポーネントのドキュメントです

IgorW のcomposer-yamlは、単一ファイルのコンソール アプリケーションの例として役立ちます。

さらに、composer のbin/composersrc/bootstrap.phpsrc/Console/Application.php、つまりsrc/Command/AboutCommand.phpを見てインスピレーションを得ることができます。

composer のbin/composersrc/bootstrap.phpを組み合わせてbin/init.php...

...次に、PSR-0 autoloading / base 名前空間をcomposer.json( composer の composer.json ) の app フォルダーに設定します ...

.... 作成app/<vendor>/Command/WhateverCommand.php...

作成app/<vendor>/Console/Application.php(拡張Symfony\Component\Console\Application) ...

...次に、コマンドをアプリケーションに登録しますbin/init.php...

use <vendor>\Console\Application;
use <vendor>\Command\WhateverCommand;

$application = new Application();
$application->add(new WhateverCommand());

..最後 run()にアプリケーション。

$application->run();

単一コマンドのアプリケーションのみが必要な場合は、ドキュメントの章「Building a Single Command application 」を参照してください。

于 2013-10-04T12:37:51.443 に答える