Symfony — kernel cache

Итак, попробую в этой статье поделиться информацией о кеше.

Декларирование используемых классов из кеша

Ядро Symfony создается с помощью класса:

$debug = getenv('SYMFONY_DEBUG') === 'true' || getenv('SYMFONY_ENV') === 'dev';

$env = $debug === true ? 'dev' : 'prod';

$kernel = new AppKernel($env, $debug);

Теперь вопрос, нужно ли в файле web/app.php вызывать:

$kernel->loadClassCache();// данный вызов выполнит include файла app/cache/prod/app/appProdProjectContainer.php

Ответ зависит от PHP-SAPI: для cli нужно, для php-fpm не нужно, т.к. ниже в файле web/app.php можно заметить вызов метода $kernel->handle(), который в свою очередь тоже выполнит выполнит include файла app/cache/prod/app/appProdProjectContainer.php в результате чего Вы получите ошибку:

PHP Fatal error: Cannot declare ... because the name is already in use

Вот что происходит, когда вызывается функция $kernel->handle()

1. {main}() /var/www/cabinet/web/app.php:0
2. Symfony\Component\HttpKernel\Kernel->handle() /var/www/site/web/app.php:41
3. Symfony\Component\HttpKernel\Kernel->boot() /var/www/site/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:182
4. Symfony\Component\HttpKernel\Kernel->doLoadClassCache() /var/www/site/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:126
5. Symfony\Component\ClassLoader\ClassCollectionLoader::load() /var/www/site/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:408

Удачки, господа.

Оцени публикацию:
  • 0,0
Оценили человек: 0

Похожие статьи:

Справочники и учебники:


Предложения и пожелания:
Ваше имя:
Ваш E-mail:
Сколько будет Οдин + Τри
Главная
X

Новые заметки:

Про что мы забываем когда делаем оценку задачи по времени

Список вопросов для собеседования разработчика по телефону

Symfony2 авторизация без Doctrine2 для чайника

Phpstorm7 LiveEdit

Жесткий хабр или не хабр, тогда кто?

Яндекс.Деньги мошенничество

Как узнать какие страницы в поиске яндекса или это секрет

Последние комменты:

Yapro CMS:

Здравствуйте, Гость | Войти | Регистрация | Карта сайта | RSS ленты | Ошибка в тексте? Выделите её мышкой и нажмите: Ctrl + Enter

youtube.com/watch?v=7hFivbgIEqk

При полном или частичном использовании материалов данного сайта, ссылка на сайт "yapro.ru" обязательна как на источник информации.
Автоматический импорт материалов и информации с сайта запрещен.
Copyrights © 2007 - 2018 YaPro.Ru

Главная » Веб-мастеру » PHP »