Ответ 1
Я решил очистить кеш:
app/console cache:clear
После переустановки моей среды Wamp это сообщение об ошибке появляется на экране после того, как я открою app_dev.php:
Неустранимая ошибка: не удается переопределить класс SessionHandlerInterface в C:...\app\cache\dev\classes.php в строке 532
Кто-нибудь знает, что происходит не так?
Я решил очистить кеш:
app/console cache:clear
PHP version 5.4 представила новую систему управления сеансом на основе интерфейса с именем SessionHandlerInterface
, и, похоже, ваш код Symfony2 объявит класс с тем же именем в глобальном пространстве имен, поэтому это столкновение имен.
Вот документы: http://www.php.net/manual/en/class.sessionhandlerinterface.php
SessionHandlerInterface - это интерфейс, который определяет прототип для создание настраиваемого обработчика сеанса. Чтобы пройти пользовательский сеанс обработчик для session_set_save_handler() с использованием своего вызова OOP, класс должен реализовать этот интерфейс.
Простой ясный кеш не работал у меня. Для этого необходимо, чтобы кеш файл был очищен с помощью команды ниже.
php app/console cache:clear --env=prod --no-debug
Просто попробуйте очистить кэш Symfony2 с помощью одной (или всех) команд ниже:
php app/console cache:clear --env=prod --no-debug (on production mode)
или/и
php app/console cache:clear --env=dev --no-debug (on development mode)
Только это сработало для меня rm -rf app/cache/*
Убедитесь, что вы определили пространство имен в своем интерфейсе SessionHandlerInterface
EX:
namespace app\cache\dev;
У меня были проблемы с кешированием даже при использовании app_dev.php. Я бы изменил маршрут, но он не обновлялся, когда я попытался получить доступ к нему через браузер.
Я пробовал комментировать все, что имело кэш в нем (как указано выше). Ничего из этого не получилось.
Если я запустил кеш консоли: очистите его, исправьте его, но следующее изменение маршрутизации снова сломается. Мне приходилось запускать кеш: ясность с каждым сохранением, что было нелепо.
Моя проблема оказалась в том, что, поскольку я работал удаленно над SFTP, PHP Storm (мой редактор) был "сохранял временную метку" в своей конфигурации развертывания. Как только я изменил эту конфигурацию, проблемы исчезли. По-видимому, происходит некоторое кэширование, которое смотрит на отметки времени файла, даже в среде dev.