mirror of
https://github.com/Mibew/handlebars.php.git
synced 2025-04-17 19:57:24 +03:00
commit
65fe447c36
73
src/Handlebars/Cache/APC.php
Normal file
73
src/Handlebars/Cache/APC.php
Normal file
@ -0,0 +1,73 @@
|
||||
<?php
|
||||
/**
|
||||
* This file is part of Handlebars-php
|
||||
* Base on mustache-php https://github.com/bobthecow/mustache.php
|
||||
*
|
||||
* PHP version 5.3
|
||||
*
|
||||
* @category Xamin
|
||||
* @package Handlebars
|
||||
* @author Joey Baker <joey@byjoeybaker.com>
|
||||
* @copyright 2013 (c) Meraki, LLP
|
||||
* @license GPLv3 <http://www.gnu.org/licenses/gpl-3.0.html>
|
||||
* @version GIT: $Id$
|
||||
* @link http://xamin.ir
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* A dummy array cache
|
||||
*
|
||||
* @category Xamin
|
||||
* @package Handlebars
|
||||
* @author Joey Baker <joey@byjoeybaker.com>
|
||||
* @copyright 2012 (c) Meraki, LLP
|
||||
* @license GPLv3 <http://www.gnu.org/licenses/gpl-3.0.html>
|
||||
* @version Release: @package_version@
|
||||
* @link http://xamin.ir
|
||||
*/
|
||||
|
||||
class Handlebars_Cache_APC implements Handlebars_Cache
|
||||
{
|
||||
private $_cache = array();
|
||||
|
||||
/**
|
||||
* Get cache for $name if exist.
|
||||
*
|
||||
* @param string $name Cache id
|
||||
*
|
||||
* @return data on hit, boolean false on cache not found
|
||||
*/
|
||||
public function get($name)
|
||||
{
|
||||
if (apc_exists($name)){
|
||||
return apc_fetch($name);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a cache
|
||||
*
|
||||
* @param string $name cache id
|
||||
* @param mixed $value data to store
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function set($name, $value)
|
||||
{
|
||||
apc_store($name, $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove cache
|
||||
*
|
||||
* @param string $name Cache id
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function remove($name)
|
||||
{
|
||||
apc_delete($name);
|
||||
}
|
||||
}
|
@ -3,9 +3,9 @@
|
||||
/**
|
||||
* This file is part of Handlebars-php
|
||||
* Base on mustache-php https://github.com/bobthecow/mustache.php
|
||||
*
|
||||
*
|
||||
* PHP version 5.3
|
||||
*
|
||||
*
|
||||
* @category Xamin
|
||||
* @package Handlebars
|
||||
* @author fzerorubigd <fzerorubigd@gmail.com>
|
||||
@ -60,7 +60,7 @@ class Handlebars_Loader_FilesystemLoader implements Handlebars_Loader
|
||||
if (isset($options['extension'])) {
|
||||
$this->_extension = '.' . ltrim($options['extension'], '.');
|
||||
}
|
||||
|
||||
|
||||
if (isset($options['prefix'])) {
|
||||
$this->_prefix = $options['prefix'];
|
||||
}
|
||||
@ -77,7 +77,7 @@ class Handlebars_Loader_FilesystemLoader implements Handlebars_Loader
|
||||
* @return string Handkebars Template source
|
||||
*/
|
||||
public function load($name)
|
||||
{
|
||||
{
|
||||
if (!isset($this->_templates[$name])) {
|
||||
$this->_templates[$name] = $this->loadFile($name);
|
||||
}
|
||||
@ -114,13 +114,16 @@ class Handlebars_Loader_FilesystemLoader implements Handlebars_Loader
|
||||
protected function getFileName($name)
|
||||
{
|
||||
$fileName = $this->_baseDir . '/';
|
||||
|
||||
if (substr($name, strlen($this->_prefix)) !== $this->_prefix){
|
||||
$fileName .= $this->_prefix;
|
||||
$fileParts = explode('/', $name);
|
||||
$file = array_pop($fileParts);
|
||||
|
||||
if (substr($file, strlen($this->_prefix)) !== $this->_prefix){
|
||||
$file = $this->_prefix . $file;
|
||||
}
|
||||
|
||||
$fileName .= $name;
|
||||
|
||||
|
||||
$fileParts[] = $file;
|
||||
$fileName .= implode('/', $fileParts);
|
||||
|
||||
if (substr($fileName, 0 - strlen($this->_extension)) !== $this->_extension) {
|
||||
$fileName .= $this->_extension;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user