Blame | Letzte Änderung | Log anzeigen | RSS feed
<?php/** This file is part of the symfony package.* (c) 2004-2006 Fabien Potencier <fabien.potencier@symfony-project.com>** For the full copyright and license information, please view the LICENSE* file that was distributed with this source code.*//*** CacheHelper.** @package symfony* @subpackage helper* @author Fabien Potencier <fabien.potencier@symfony-project.com>* @version SVN: $Id: CacheHelper.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $*//* Usage<?php if (!cache('name')): ?>... HTML ...<?php cache_save() ?><?php endif; ?>*/function cache($name, $lifeTime = 86400){if (!sfConfig::get('sf_cache')){return null;}$cache = sfContext::getInstance()->getViewCacheManager();if (sfConfig::get('symfony.cache.started')){throw new sfCacheException('Cache already started.');}$data = $cache->start($name, $lifeTime);if (null === $data){sfConfig::set('symfony.cache.started', true);sfConfig::set('symfony.cache.current_name', $name);return false;}else{echo $data;return true;}}function cache_save(){if (!sfConfig::get('sf_cache')){return null;}if (!sfConfig::get('symfony.cache.started')){throw new sfCacheException('Cache not started.');}$data = sfContext::getInstance()->getViewCacheManager()->stop(sfConfig::get('symfony.cache.current_name', ''));sfConfig::set('symfony.cache.started', false);sfConfig::set('symfony.cache.current_name', null);echo $data;}