码迷,mamicode.com
首页 > 其他好文 > 详细

数组形式保存到文件中

时间:2014-09-10 17:40:40      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:io   ar   文件   数据   cti   on   c   amp   ad   

/**
* 写入缓存
* @param string $name 缓存名称
* @param mixed $data 缓存数据
* @param array $setting 缓存配置
* @param string $type 缓存类型
* @param string $module 所属模型
* @return mixed 缓存路径/false
*/

public function set($name, $data, $setting = ‘‘, $type = ‘data‘, $module = ROUTE_M) {
$this->get_setting($setting);
if(empty($type)) $type = ‘data‘;
if(empty($module)) $module = ROUTE_M;
$filepath = CACHE_PATH.‘caches_‘.$module.‘/caches_‘.$type.‘/‘;
$filename = $name.$this->_setting[‘suf‘];
if(!is_dir($filepath)) {
mkdir($filepath, 0777, true);
}

if($this->_setting[‘type‘] == ‘array‘) {
$data = "<?php\nreturn ".var_export($data, true).";\n?>";
} elseif($this->_setting[‘type‘] == ‘serialize‘) {
$data = serialize($data);
}
if ($module == ‘commons‘ || ($module == ‘commons‘ && substr($name, 0, 16) != ‘category_content‘)) {
$db = pc_base::load_model(‘cache_model‘);
$datas = new_addslashes($data);
if ($db->get_one(array(‘filename‘=>$filename, ‘path‘=>‘caches_‘.$module.‘/caches_‘.$type.‘/‘), ‘`filename`‘)) {
$db->update(array(‘data‘=>$datas), array(‘filename‘=>$filename, ‘path‘=>‘caches_‘.$module.‘/caches_‘.$type.‘/‘));
} else {
$db->insert(array(‘filename‘=>$filename, ‘path‘=>‘caches_‘.$module.‘/caches_‘.$type.‘/‘, ‘data‘=>$datas));
}
}

//是否开启互斥锁
if(pc_base::load_config(‘system‘, ‘lock_ex‘)) {
$file_size = file_put_contents($filepath.$filename, $data, LOCK_EX);
} else {
$file_size = file_put_contents($filepath.$filename, $data);
}

return $file_size ? $file_size : ‘false‘;
}

数组形式保存到文件中

标签:io   ar   文件   数据   cti   on   c   amp   ad   

原文地址:http://www.cnblogs.com/hechunhua/p/3964659.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!