コード例 #1
0
ファイル: AbstractAdapter.php プロジェクト: ayoah/symfony
 public static function createSystemCache($namespace, $defaultLifetime, $version, $directory, LoggerInterface $logger = null)
 {
     if (null === self::$apcuSupported) {
         self::$apcuSupported = ApcuAdapter::isSupported();
     }
     if (!self::$apcuSupported && null === self::$phpFilesSupported) {
         self::$phpFilesSupported = PhpFilesAdapter::isSupported();
     }
     if (self::$phpFilesSupported) {
         $opcache = new PhpFilesAdapter($namespace, $defaultLifetime, $directory);
         if (null !== $logger) {
             $opcache->setLogger($logger);
         }
         return $opcache;
     }
     $fs = new FilesystemAdapter($namespace, $defaultLifetime, $directory);
     if (null !== $logger) {
         $fs->setLogger($logger);
     }
     if (!self::$apcuSupported) {
         return $fs;
     }
     $apcu = new ApcuAdapter($namespace, (int) $defaultLifetime / 5, $version);
     if (null !== $logger) {
         $apcu->setLogger($logger);
     }
     return new ChainAdapter(array($apcu, $fs));
 }
コード例 #2
0
 public static function createSystemCache($namespace, $defaultLifetime, $nonce, $directory, LoggerInterface $logger = null)
 {
     $fs = new FilesystemAdapter($namespace, $defaultLifetime, $directory);
     if (null !== $logger) {
         $fs->setLogger($logger);
     }
     if (!ApcuAdapter::isSupported()) {
         return $fs;
     }
     $apcu = new ApcuAdapter($namespace, $defaultLifetime / 5, $nonce);
     if (null !== $logger) {
         $apcu->setLogger($logger);
     }
     return new ChainAdapter(array($apcu, $fs));
 }