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';
    }

  • 相关阅读:
    MySQL:如何查询出每个分组中的 top n 条记录?
    架构图解
    Jmeter(四十七)_性能测试统计超时率
    修改Docker容器启动配置参数
    Docker容器CPU、memory资源限制
    jmeter(四十六)参数化与断言实战
    jmeter(四十五)常用Beanshell脚本
    jmeter(四十四)常用性能指标分析
    linux性能监控常用命令
    jmap -heap 查看堆内存
  • 原文地址:https://www.cnblogs.com/hechunhua/p/3964659.html
Copyright © 2011-2022 走看看