1

symfony の yaml コンポーネントを Silex に追加しようとしていますが、5.3 バージョンの追加に問題があります。名前空間なしのバージョンを追加してもうまくいきますが、https://github.com/symfony/Yamlから名前空間付きのバージョンを使用したいと思います。これは私のサービス プロバイダーです。

public function register(Application $app)
{
    if (isset($app['classPath'])) {
        $app['autoloader']->registerNamespace('Symfony\Component\Yaml', $app['classPath']);
    }
}

しかし、私がこれを行うときのコードは次のとおりです。

use Symfony\Component\Yaml\Yaml;
Yaml::load(__DIR__ . '/../configuration/application.yml');

次のエラーが表示されます。

致命的なエラー: 20 行目の /mnt/hgfs/silex/web/index.php にクラス 'Symfony\Component\Yaml\Yaml' が見つかりません

完全な正解: gregoire は、Symfony\Comonent\Yaml ではなく、Symfony 名前空間の登録についてコメントしたので、基本的に名前空間のディレクトリ構造を再作成し、ルートを Symfony 名前空間に登録しました。

4

1 に答える 1

2

silexがcomposerを使用しているので、composerを使用してそれを含めています。

于 2012-04-10T20:17:24.757 に答える