20

wamp 環境を再インストールした後、app_dev.php を開いた後、このエラー メッセージが画面に表示されます。

致命的なエラー: 532 行目で C:...\app\cache\dev\classes.php のクラス SessionHandlerInterface を再宣言できません

何がうまくいかないのか誰にも手がかりがありますか?

4

7 に答える 7

44

キャッシュをクリアして解決しました:

app/console cache:clear
于 2013-03-12T17:24:05.690 に答える
22

PHPバージョン5.4では、と呼ばれるインターフェースに基づく新しいセッション管理システムが導入されましたSessionHandlerInterface。Symfony2コードは、グローバル名前空間でまったく同じ名前のクラスを宣言しているように見えるため、名前の衝突が発生します。

ドキュメントは次のとおりです:http ://www.php.net/manual/en/class.sessionhandlerinterface.php

SessionHandlerInterfaceは、カスタムセッションハンドラーを作成するためのプロトタイプを定義するインターフェイスです。OOP呼び出しを使用してカスタムセッションハンドラーをsession_set_save_handler()に渡すには、クラスがこのインターフェイスを実装する必要があります。

于 2013-02-04T16:11:24.773 に答える
14

単純なキャッシュのクリアはうまくいきませんでした。以下のコマンドを使用して本番キャッシュをクリアする必要がありました。

php app/console cache:clear --env=prod --no-debug
于 2013-07-21T21:55:57.150 に答える
7

以下のコマンドの 1 つ (またはすべて) を使用して、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)
于 2013-12-05T10:10:26.323 に答える
4

これだけが私のために働いたrm -rf app/cache/*

于 2014-09-16T07:56:22.647 に答える
-1

app_dev.php を使用している場合でも、キャッシュの問題が発生していました。ルートを変更しますが、ブラウザからアクセスしようとしても更新されません。

キャッシュが含まれているものはすべてコメントアウトしてみました(上記のとおり)。どれもうまくいきませんでした。

コンソールの cache:clear を実行すると問題は解決しますが、次のルーティング変更で再び機能しなくなります。保存するたびに cache:clear を実行する必要がありましたが、これはばかげていました。

私の問題は、SFTP を介してリモートで作業していたため、PHP Storm (私のエディター) が展開構成で「タイムスタンプを保持」していたことが判明しました。その構成を変更すると、問題はなくなりました。どうやら、開発環境であっても、ファイルのタイムスタンプを調べるキャッシングが行われているようです。

于 2016-10-21T20:53:21.993 に答える