如何找到“无法重新声明课程”错误

时间:2015-09-25 14:26:19

标签: php symfony

我正在尝试将缓存实现到symfony应用程序。 我正在使用FOSHttpCacheBundle,它工作得很好我没有问题。 但是当我进行测试时,我在页面上出现了这个错误:

Compile Error: Cannot redeclare class Symfony\Component\EventDispatcher\Event

问题是我不知道怎样才能找到错误... 我只在这个页面得到它。 我唯一知道的是可以通过注释行

来解决这个问题
$kernel = new AppCache($kernel);

导致

require_once __DIR__.'/AppKernel.php';

use FOS\HttpCache\SymfonyCache\UserContextSubscriber;
use FOS\HttpCache\SymfonyCache\PurgeSubscriber;
use FOS\HttpCacheBundle\SymfonyCache\EventDispatchingHttpCache;

class AppCache extends EventDispatchingHttpCache
{
    public function getDefaultSubscribers()
    {
        $subscribers[] = new PurgeSubscriber(array('purge_client_ips' => 'localhost'));

        return $subscribers;
    }
}

所以知道我需要检查什么?

1 个答案:

答案 0 :(得分:0)

如果没有调试,很难说“为什么”,但您可以尝试检查类是否已经注册

if(!class_exists('Symfony\Component\EventDispatcher\Event'){
            use FOS\HttpCacheBundle\SymfonyCache\EventDispatchingHttpCache;
}