7

私はこの記事に従おうとしています:

http://fabien.potencier.org/article/62/create-your-own-framework-on-top-of-the-symfony2-components-part-12

HttpKernelも見て ください https://github.com/symfony/HttpKernel

そして、私はかなり混乱しています。カーネルは実際には HttpKernel クラスよりもはるかに優れたものであり、標準の Symfony でさえapp.php

$kernel = new AppKernel('prod', false);
$kernel->loadClassCache();

//$kernel = new AppCache($kernel);
$request = Request::createFromGlobals();
$response = $kernel->handle($request);

いずれにせよ、カーネルは内部を呼び出しHttpKernel->handle()ます$kernel->handle($request)。さらに、バンドルのロードも処理しているようです?

ただし、カーネルがその内部でサービス コンテナーを作成するboot()handle()、コンテナーもコンパイルされ、パラメーターとサービスを追加できなくなります。

だから私は私の質問は次のとおりだと思います:

  1. チュートリアルで Framework クラスが Kernel ではなく HttpKernel を拡張する特定の理由はありますか?
  2. 私も従うべきでしょうか?または、カーネルをコアとして使用する必要があります。もしそうなら、どうすればcompile()問題を回避できますか? 追加しなければならないパラメーターとサービスがありますが、どのように処理すればよいですか?
4

1 に答える 1