本文整理汇总了PHP中cache::read方法的典型用法代码示例。如果您正苦于以下问题:PHP cache::read方法的具体用法?PHP cache::read怎么用?PHP cache::read使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cache
的用法示例。
在下文中一共展示了cache::read方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: findrank
/**
* 函数findrank,用户等级整合数组.
*
* @param $condition 用户信息
* @param $cache_key 缓存识别
* @param $lists_formated 用户列表
* @param $lists 用户列表
*
* @return $lists_formated 用户等级整合列表
*/
public function findrank()
{
$condition = '';
$cache_key = md5($this->name . '_findrank');
$lists_formated = cache::read($cache_key);
if ($lists_formated) {
return $lists_formated;
} else {
$lists = $this->find('all', array('conditions' => $condition));
$lists_formated = array();
if (is_array($lists)) {
foreach ($lists as $k => $v) {
$lists_formated[$v['UserRank']['id']]['UserRank'] = $v['UserRank'];
if (is_array($v['UserRankI18n'])) {
$lists_formated[$v['UserRank']['id']]['UserRankI18n'][] = $v['UserRankI18n'];
}
$lists_formated[$v['UserRank']['id']]['UserRank']['name'] = '';
foreach ($lists_formated[$v['UserRank']['id']]['UserRankI18n'] as $key => $val) {
$lists_formated[$v['UserRank']['id']]['UserRank']['name'] .= $val['name'] . ' | ';
}
}
}
cache::write($cache_key, $lists_formated);
return $lists_formated;
}
}
示例2: find
/**
* 重构find方法,增加缓存的调用.
*
* @author 笨笨天才@20101127
*
* $params['cache']=array('use'=>true,'config'=>'short');
* short是core.php定义的Cache:Config,默认为null
*
* @param string $type 输入类型
* @param mixed $params 输入参数
* @param bool $params['cache']['use'] 是否使用缓存标志
* @param string $params['cache']['config'] 缓存类型
*
* @return mixed $data 返回值
*/
public function find($type, $params = array())
{
//!isset($params['cache'])
if (isset($params['cache']) && $params['cache']['use'] !== false) {
//判断是否不读取缓存数据
$cache_config = isset($params['cache']['config']) ? $params['cache']['config'] : null;
$model = isset($this->name) ? '_' . $this->name : 'appmodel';
$paramsHash = md5(serialize($params));
$cache_key = $model . '_' . $type . '_' . $this->locale . '_' . $paramsHash;
//根据模型名称,type参数,多语言,params组成缓存唯一序号
// echo $params['cache']['config']."----".$cache_key."<br />";
//pr($cache_config);
$data = cache::read($cache_key, $cache_config);
//print_r($params);
if ($data) {
// echo "cached:".$cache_key."<br /><pre>";
return $data;
} else {
//echo "not find cached:".$cache_key."<br /><pre>";
//print_r($params);
$data = parent::find($type, $params);
cache::write($cache_key, $data, $cache_config);
//将数据库的值写入缓存
return $data;
}
} else {
//echo "no cache:".$cache_key."<br /><pre>";
return parent::find($type, $params);
}
}
示例3: __construct
/**
* Konstruktor
* @param string $langCode
* @return boolean
*/
public function __construct($langCode)
{
if (!$langCode) {
$langCode = FPCM_DEFAULT_LANGUAGE_CODE;
}
if (!is_dir(baseconfig::$langDir . $langCode)) {
trigger_error('Try to load undefined language: ' . $langCode);
return false;
}
$this->langCode = $langCode;
$confFile = baseconfig::$langDir . $langCode . '/lang.cfg';
if (!file_exists($confFile)) {
trigger_error('Unable to find language config file in: ' . $langCode);
return false;
}
$this->langList[$langCode] = file_get_contents($confFile);
$this->helpFile = baseconfig::$langDir . $langCode . '/help.php';
$this->cache = new cache('langcache_' . $langCode, 'system');
if (!$this->cache->isExpired()) {
$this->langData = $this->cache->read();
return;
}
$moduleLangFiles = $langCode != FPCM_DEFAULT_LANGUAGE_CODE ? glob(baseconfig::$moduleDir . '*/*/lang/' . FPCM_DEFAULT_LANGUAGE_CODE . '/*.php') : array();
$moduleLangFiles_langcode = glob(baseconfig::$moduleDir . '*/*/lang/' . $langCode . '/*.php');
if (is_array($moduleLangFiles_langcode)) {
$moduleLangFiles += $moduleLangFiles_langcode;
}
$langfiles = array_merge(glob(baseconfig::$langDir . $langCode . '/*.php'), is_array($moduleLangFiles) ? $moduleLangFiles : array());
foreach ($langfiles as $file) {
if (strpos($file, 'help.php') !== false) {
continue;
}
include $file;
if (!isset($lang)) {
trigger_error('No language data defined in:' . $file);
continue;
}
$this->langData = array_merge($this->langData, $lang);
}
$this->cache->write($this->langData, FPCM_LANGCACHE_TIMEOUT);
}
示例4: find_template
/**
* 函数find_template 用于选择模板
*
* @param $sql sql语句
* @param $cache_key 缓存的识别码
* @param $template 缓存中读取模板
*
* @return $template 模板信息
*/
public function find_template($sql)
{
$cache_key = md5($this->name . '_' . $sql);
$template = cache::read($cache_key);
if ($template) {
return $template;
} else {
$template = $this->findAll($sql);
cache::write($cache_key, $template);
return $template;
}
}
示例5: prepare
public function prepare()
{
global $schema, $settings;
$this->template = "economy";
$this->tab = 'item';
$this->title = "State of the economy";
$b = new backpack(false);
$json = cache::read('item_stats.json');
$item_stats = json_decode($json, true);
$total_items = $item_stats['total_items'];
$metal_index = $item_stats['total_metal'] / $item_stats['total_players'];
$this->params['metal_index'] = $metal_index;
krsort($this->params['effects']);
$this->params['profiles'] = $item_stats['total_players'];
$this->params['time'] = cache::date('item_stats.json');
}
示例6: findall_ranks
/**
* 函数findall_ranks,获取商品等级.
*
* @param $cache_key 缓存调取商品等级
* @param $rank_price 商品等级价
* @param $p_r 所有商品等级
*
* @return $rank_price 商品等级对应价格
*/
public function findall_ranks()
{
$cache_key = md5('ProductRank_findall');
$rank_price = cache::read($cache_key);
if (!$rank_price) {
$p_r = $this->findall();
$rank_price = array();
if (is_array($p_r) && sizeof($p_r) > 0) {
foreach ($p_r as $k => $v) {
$rank_price[$v['ProductRank']['product_id']][$v['ProductRank']['rank_id']] = $v;
}
}
cache::write($cache_key, $rank_price);
return $rank_price;
} else {
return $rank_price;
}
}
示例7: findassoc
/**
* findassoc方法,取得id=>name的数组.
*
* @param $locale 输入语言
*
* @return $lists_formated 返回取得的数组
*/
public function findassoc($locale = '')
{
$condition = " Brand.status ='1' ";
$orderby = ' orderby asc ';
$cache_key = md5($this->name . '_' . $locale);
$lists_formated = cache::read($cache_key);
if ($lists_formated) {
return $lists_formated;
} else {
// $lists=$this->findall($condition,'',$orderby);
$lists = $this->find('all', array('order' => array($orderby, 'BrandI18n.name asc'), 'fields' => array('Brand.id', 'Brand.flash_config', 'Brand.url', 'Brand.img01', 'Brand.modified', 'BrandI18n.img01', 'BrandI18n.name'), 'conditions' => array($condition)));
$lists_formated = array();
if (is_array($lists)) {
foreach ($lists as $k => $v) {
$lists_formated[$v['Brand']['id']] = $v;
}
}
cache::write($cache_key, $lists_formated);
return $lists_formated;
}
}
示例8: prepare
public function prepare()
{
global $schema, $settings;
$this->template = "qualities";
$this->tab = 'item';
$this->title = "Quality statistics";
$b = new backpack(false);
$json = cache::read('item_stats.json');
$item_stats = json_decode($json, true);
$total_qualities = $item_stats['qualities_total'];
$total_items = $item_stats['total_items'];
$qualities = array();
foreach ($item_stats['qualities'] as $c => $p) {
$qualities[$p] = array('total' => $p / $total_items, 'quality' => $c, 'name' => quality_to_label(int_to_quality($c)), 'color' => quality_to_color(int_to_quality($c)), 'tooltip' => sprintf('<h1 class="%s">%s</h1>', int_to_quality($c), quality_to_label(int_to_quality($c))));
}
$this->params['qualities'] = $qualities;
krsort($this->params['qualities']);
//var_dump($this->params['qualities']);
$this->params['profiles'] = $item_stats['total_players'];
$this->params['time'] = cache::date('item_stats.json');
}
示例9: prepare
public function prepare()
{
global $schema;
$this->template = "crates";
$this->tab = 'item';
$b = new backpack(false);
$json = cache::read('item_stats_luigi.json');
$crate_stats = json_decode($json, true);
foreach ($crate_stats['crate_items'] as $series => $items) {
foreach ($items as $defindex => $drops) {
$si = $schema['items'][$defindex];
$i = $b->get_item($si);
//var_dump($i);
$i['drop_rate'] = $drops / $crate_stats['crate_totals'][$series];
$crates[$series]['items'][] = $i;
$crates[$series]['series'] = $series;
$crates[$series]['sample'] = $crate_stats['crate_totals'][$series];
}
}
$this->title = "Crate statistics";
$this->params['crates'] = $crates;
$this->params['stats'] = $s;
}
示例10: find
public function find($type, $params = array())
{
//echo $this->locale;
if (isset($this->cache_config) && $this->cache_config !== false) {
//判断是否不读取缓存数据
$model = isset($this->name) ? '_' . $this->name : 'appmodel';
$paramsHash = serialize($params);
$cache_key = md5($model . '_' . $type . '_' . $this->locale . '_' . $paramsHash);
//根据模型名称,type参数,多语言,params组成缓存唯一序号
$data = cache::read($cache_key, $this->cache_config);
//print_r($data);
if ($data) {
return $data;
} else {
$data = parent::find($type, $params);
cache::write($cache_key, $data, $this->cache_config);
//将数据库的值写入缓存
return $data;
}
} else {
return parent::find($type, $params);
}
}
示例11: getBlog
public static function getBlog()
{
$cacheFile = cache::getFileName(0, 'rpBlog');
// every 12 hours
if (cache::exist($cacheFile, 43200)) {
$content = json_decode(cache::read($cacheFile), true);
} else {
$content = apiserver::getBlogFile();
cache::write($content, $cacheFile);
}
$return = [];
foreach ($content as $blog) {
$return[] = '
<div class="item">
<div class="circle"></div>
<div class="text">
<p><a target="_blank" href="' . $blog['link'] . '">' . $blog['name'] . '</a></p>
<small>' . date(lang::get('dateformat'), strtotime($blog['date'])) . '</small>
</div>
</div>
';
}
return implode(PHP_EOL, $return);
}
示例12: get_value
public function get_value($value, $mode = true)
{
$cache_config = 'short';
if ($mode) {
$paramsHash = md5(serialize($value));
$cache_key = 'pic' . '_' . $paramsHash . '_file';
$foo = cache::read($cache_key, $cache_config);
//var_dump($foo);echo ";";$d=file_get_contents($value); imagecreatefromstring($d);die();
//$foo = false;
if ($foo) {
$foo = imagecreatefromstring($foo);
return $foo;
} else {
$foo = file_get_contents($value);
cache::write($cache_key, $foo, $cache_config);
//写入缓存
return imagecreatefromgif($value);
}
}
return imagecreatefromgif($value);
}
示例13: getControllers
/**
* Controller abrufen
* @return array
*/
public static function getControllers()
{
$controllerCache = new cache('controllerCache', 'system');
if (!$controllerCache->isExpired()) {
$controllerList = $controllerCache->read();
if (is_array($controllerList)) {
return $controllerList;
}
}
include_once loader::libGetFilePath('spyc', 'Spyc.php');
if (!file_exists(self::$controllerFiles['actions']) || !file_exists(self::$controllerFiles['ajax'])) {
die('ERROR: Controller config files not found.');
}
$actions = \Spyc::YAMLLoad(self::$controllerFiles['actions']);
$ajaxs = \Spyc::YAMLLoad(self::$controllerFiles['ajax']);
$modules = self::initModuleControllers();
$controllerList = array_unique(array_merge($actions, $ajaxs, $modules));
$controllerCache->write($controllerList, FPCM_LANGCACHE_TIMEOUT);
return $controllerList;
}
示例14: getAddons
public static function getAddons()
{
$cacheFile = cache::getFileName(0, 'dynaoAddons');
// jeden halben Tag
if (cache::exist($cacheFile, 43200)) {
$content = json_decode(cache::read($cacheFile), true);
} else {
$server = 'http://api.dynao.de/addons.json';
$ch = curl_init($server);
curl_setopt($ch, CURLOPT_PORT, 80);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla (Statuscheck-Script)');
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_DNS_CACHE_TIMEOUT, 300);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$curl = curl_exec($ch);
curl_close($ch);
$content = json_decode($curl, true);
cache::write($content, $cacheFile);
}
$table = table::factory(['class' => ['table', 'table-spriped', 'table-hover']]);
$table->addCollsLayout('60, 140, *, 110');
$table->addRow()->addCell(lang::get('vote'))->addCell(lang::get('name'))->addCell(lang::get('description'))->addCell();
$table->addSection('tbody');
if (is_null($content)) {
$table->addRow()->addCell(lang::get('no_entries'), ['colspan' => 4]);
} else {
foreach ($content as $addon) {
$perc = round($addon['rate_sum'] / $addon['rate_ppl'] * 10);
if ($perc < 33) {
$class = 'danger';
} elseif ($perc < 66) {
$class = 'warning';
} else {
$class = 'success';
}
$table->addRow()->addCell('<span class="label label-' . $class . '">' . $perc . '%</span>')->addCell($addon['title'])->addCell($addon['description'])->addCell('<a href="' . $addon['link'] . '" target="_blank" class="btn btn-sm btn-default">' . lang::get('download') . '</a>');
}
}
return $table->show();
}
示例15: loadCache
/**
* Den Cache laden
*/
protected static function loadCache()
{
$cacheFile = cache::getFileName(0, 'autoloadcache');
if (!cache::exist($cacheFile, 3600)) {
return;
}
list(self::$classes, self::$dirs) = json_decode(cache::read($cacheFile), true);
}