2

コマンドが実行されるときに(new sfAPCCache())->clean()、またはへの単純な呼び出しを追加する必要があります。apc_clear_cache()./symfony cc

誰でもこれを達成する方法を知っていますか? どの時点で symfony アプリケーションを編集する必要がありますか、またはこの追加の動作をどのように登録する必要がありますか?

4

2 に答える 2

4

実際、イベントをリッスンして新しい動作を追加できることを発見しました./symfony cc

$this->dispatcher->connect('task.cache.clear', array('ClearAPCCache','clearCache'))

symfony コマンドはコマンドライン スクリプトであるのに対し、APC キャッシュは Web サーバー プロセスに関連しているため、コマンドライン タスクから APC キャッシュをクリアできないという問題が残ります。

于 2013-01-25T09:28:30.717 に答える
2

独自のカスタム タスクを作成するだけです。

./symfony generate:task your_task_name

このタスク(libフォルダー内)では、次のようなものを実行するだけです

protected function execute($arguments = array(), $options = array())
{
    // Run your own apc cache
    // ...

    /// Then run the cache:clear
    $this->runTask('cache:clear');
}
于 2013-01-24T13:30:51.943 に答える