symfony2の作業を開始したばかりですが、私はそれを理解できないような巨大なロードブロックを持っています。私はバンドルなどを登録するためにAppKernelという新しいクラスを作成しました。symfonyのキャッシュ生成ファイルを修正する方法
class AppKernel extends Kernel
{
public function registerBundles()
{
$bundles=[
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
new Symfony\Bundle\MonologBundle\MonologBundle(),
new Symfony\Bundle\SecurityBundle\SecurityBundle(),
new mdBundle\mdBundle(),
];
return $bundles;
}
public function registerContainerConfiguration(LoaderInterface $loader)
{
$loader->load(function ($container) {
$container->loadFromExtension('framework', array(
'secret' => 'some secret here',
'router' => array(
'resource' => '%kernel.root_dir%/config/routing.yml'
),
'templating' => array('engines' => array('php'))
));
});
}
}
私のフロントコントローラは、次のようになります。
include_once(__DIR__ . '/../../app/bootstrap.php');
/**
* @var Composer\Autoload\ClassLoader $loader
*/
$loader = require '../../app/vendor/autoload.php';
Debug::enable();
$kernel = new AppKernel('dev', true);
//$kernel->loadClassCache();
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);
私が取得エラーMSGは以下の通りです:タイプエラー:Symfonyの\コンポーネントに渡さ引数4 \ HttpKernel \ HttpKernel :: __構築物( )はインターフェイスSymfony \ Component \ HttpKernel \ Controller \ ArgumentResolverInterfaceを実装する必要があります。/var/www/html/app/classes/cache/dev/classesDevDebugProjectContainer.php on 367で呼び出されます。 このファイルの仕組みがわかりません引数4に間違った値で作成される(値はfalse "boolean")
ここは私のcomposer.jsonファイルです。
"require": {
"php": ">=7.0",
"symfony/console":"v3.0.0",
"mobiledetect/mobiledetectlib": "2.5.7",
"zendframework/zend-db": "2.2.5",
"symfony/dependency-injection": "v3.0.0",
"symfony/config": "v3.0.0",
"symfony/yaml": "v2.3.5",
"phpmailer/phpmailer" : "v5.2.9",
"smarty/smarty" : "3.1.12",
"knplabs/knp-snappy": "*",
"twbs/bootstrap": "3.3.6",
"phpoffice/phpexcel": "*",
"moredirect/service": "dev-master",
"symfony/var-dumper": "2.*",
"gongo/merciful-polluter": "^0.0.3",
"solarium/solarium": "^3.5",
"symfony/framework-bundle": "v3.0.0",
"symfony/form": "3.0.0",
"doctrine/doctrine-bundle": "1.6.2",
"symfony/monolog-bundle": "2.10.0",
"symfony/security-bundle": "3.0.0",
"symfony/finder": "3.0.0",
"symfony/filesystem": "3.0.0",
"symfony/web-profiler-bundle": "3.0.0",
"sensio/framework-extra-bundle": "v3.0.0",
"sensio/distribution-bundle": "3.0.0"
}
ご協力いただきまして誠にありがとうございます。 ありがとうございます。
'php bin/console cache:clear' – Farkie
私はそれを試みましたが、それは再びエラーが再び発生した後にファイルを削除するだけです。 – user1960170
AppKernel.phpが標準版に含まれているAppKernel.phpとはまったく違って見える理由はわかりません。 – Splendonia