zoukankan      html  css  js  c++  java
  • 数组形式保存到文件中

    /**
    * 写入缓存
    * @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 return ".var_export($data, true)."; ?>";
    } 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';
    }

  • 相关阅读:
    python 大小写转换函数
    linux 自学系列:GRUB引导程序
    linux 自学系列:退出linux命令
    dict 常用方法
    ln命令简单用法
    利用easy_install 工作效率提升起来
    linux 自学系列:touch 命令
    linux 改文件夹命令
    开机自动重启脚本
    multiprocessing 用法
  • 原文地址:https://www.cnblogs.com/hechunhua/p/3964659.html
Copyright © 2011-2022 走看看