本文整理汇总了PHP中FileCache::getFile方法的典型用法代码示例。如果您正苦于以下问题:PHP FileCache::getFile方法的具体用法?PHP FileCache::getFile怎么用?PHP FileCache::getFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FileCache
的用法示例。
在下文中一共展示了FileCache::getFile方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: preStaticServe
public function preStaticServe(StaticServer $server)
{
// If file was a package file, don't do anything
if ($this->is_package) {
return;
}
// If the type isn't css we don't touch it
if ($server->getType() != 'css') {
return;
}
$path = $server->getPath();
$cache_path = $this->cache . '.' . preg_replace('#\\W#', '', $path);
// Compile and cache CSS file.
$cache = new FileCache($cache_path, $path);
$cache->setExtension('css');
if ($cache->isOutDated() || $this->force_update) {
$contents = file_get_contents($path);
$compiler = new CSSCompiler($contents);
$updated = $compiler->compile();
$cache->update($updated);
}
// Change the path to be the cached file instead
$server->setPath($cache->getFile());
}
示例2: prepare
//.........这里部分代码省略.........
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
$keys = array_keys($_GET);
//get URL after '?'
} else {
$qstringPieces = explode('&', $_SERVER['QUERY_STRING']);
foreach ($qstringPieces as $key => $value) {
$x = explode('=', $value);
$value = isset($x[1]) ? $x[1] : "";
$this->key_val_pairs[$x[0]] = $value;
$this->qstring_keys[$x[0]];
}
$keys = array_keys($_POST);
//get form variables
}
foreach ($keys as $key => $value) {
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
//make to lower case
$this->key_val_pairs[strtolower($value)] = $_GET[$value];
} else {
//make to lower case
$this->key_val_pairs[strtolower($value)] = $_POST[$value];
}
}
if ($moduleKeyword == $controllerKeyword || $actionKeyword == $controllerKeyword || $moduleKeyword == $actionKeyword) {
throw new AiryException("Duplicate MVC Keywords. Module's, Controller's and Action's keywords should be unique.");
}
// setup module first
if (!empty($this->key_val_pairs[$moduleKeyword])) {
$this->moduleName = RouterHelper::hyphenToCamelCase($this->key_val_pairs[$moduleKeyword]);
//module name
$this->setModule($this->moduleName);
unset($this->key_val_pairs[$moduleKeyword]);
} else {
$this->moduleName = $config->getDefaultModule();
//no module name means "default" module
$this->setModule($this->moduleName);
}
//Set Controller Name; also set the default model and view here
//Controller's first letter is upper case
if (!empty($this->key_val_pairs[$controllerKeyword])) {
$this->controllerName = RouterHelper::hyphenToCamelCase($this->key_val_pairs[$controllerKeyword], TRUE);
$this->setDefaultModelView($this->controllerName);
MvcReg::setControllerName($this->controllerName);
$this->controller = $this->controllerName . self::CONTROLLER_POSTFIX;
//controller name
unset($this->key_val_pairs[$controllerKeyword]);
} else {
$this->controllerName = ucfirst(self::DEFAULT_PREFIX);
$this->controller = $this->controllerName . self::CONTROLLER_POSTFIX;
$this->setDefaultModelView(self::DEFAULT_PREFIX);
MvcReg::setControllerName($this->controllerName);
}
//Setting action
if (!empty($this->key_val_pairs[$actionKeyword])) {
$this->actionName = RouterHelper::hyphenToCamelCase($this->key_val_pairs[$actionKeyword]);
MvcReg::setActionName($this->actionName);
$this->action = RouterHelper::hyphenToCamelCase($this->key_val_pairs[$actionKeyword]) . self::ACTION_POSTFIX;
//action name
unset($this->key_val_pairs[$actionKeyword]);
} else {
$this->actionName = self::DEFAULT_PREFIX;
MvcReg::setActionName($this->actionName);
$this->action = self::DEFAULT_PREFIX . self::ACTION_POSTFIX;
}
$this->setDefaultActionView($this->controllerName, $this->actionName);
$this->setModuleControllerAction($this->moduleName, $this->controllerName, $this->actionName);
//Setting language code and Session
if (!empty($this->key_val_pairs[$languageKeyword])) {
$this->languageCode = $this->key_val_pairs[$languageKeyword];
$this->setLanguageCode($this->languageCode);
//set langauge session based on module
//@TODO: need to consider to add a project layer in the futuure
$_SESSION[$this->moduleName][self::LANGUAGE_CODE] = $this->languageCode;
unset($this->key_val_pairs[$languageKeyword]);
} else {
if (!empty($_SESSION[$this->moduleName][self::LANGUAGE_CODE])) {
$this->setLanguageCode($_SESSION[$this->moduleName][self::LANGUAGE_CODE]);
} else {
$this->setLanguageCode($defaultLanguageCode);
//@TODO: need to consider to add a project layer in the futuure
$_SESSION[$this->moduleName][self::LANGUAGE_CODE] = $defaultLanguageCode;
}
}
//Getting serialize data for setting authentication allowing actions
if (!empty($this->key_val_pairs[self::ALLOW_THIS_ACTION])) {
if (isset($this->key_val_pairs[self::ALLOW_THIS_ACTION])) {
$filename = $this->key_val_pairs[self::ALLOW_THIS_ACTION];
$checkContent = $this->moduleName . ";" . $this->controllerName . ";" . $this->actionName;
$checkContent = md5($checkContent);
if (trim(FileCache::getFile($filename)) == trim($checkContent)) {
Authentication::addLayoutAllowAction($this->moduleName, $this->controllerName, $this->actionName);
FileCache::removeFile($filename);
}
}
unset($this->key_val_pairs[self::ALLOW_THIS_ACTION]);
}
$this->params = $this->key_val_pairs;
Parameter::unsetAllParams();
Parameter::setParams($this->params);
}