ѡ̳

 找回密码
 ע
搜索
查看: 179|回复: 0
打印 上一主题 下一主题

thinkphp公共函数之F函数缓存函数

[复制链接]

789

主题

1158

帖子

4197

积分

Ա

Rank: 9Rank: 9Rank: 9

积分
4197
跳转到指定楼层
¥
发表于 2017-11-12 19:08:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
源码

  1. /**
  2. * 快速文件数据读取和保存 针对简单类型数据 字符串、数组
  3. * @param string $name 缓存名称
  4. * @param mixed $value 缓存值
  5. * @param string $path 缓存路径
  6. * @return mixed
  7. */
  8. function F($name, $value='', $path=DATA_PATH) {
  9.     static $_cache  =   array();
  10.     $filename       =   $path . $name . '.php';
  11.     if ('' !== $value) {
  12.         if (is_null($value)) {
  13.             // 删除缓存
  14.             if(false !== strpos($name,'*')){
  15.                 return false; // TODO
  16.             }else{
  17.                 unset($_cache[$name]);
  18.                 return Think\Storage::unlink($filename,'F');
  19.             }
  20.         } else {
  21.             Think\Storage::put($filename,serialize($value),'F');
  22.             // 缓存数据
  23.             $_cache[$name]  =   $value;
  24.             return null;
  25.         }
  26.     }
  27.     // 获取缓存数据
  28.     if (isset($_cache[$name]))
  29.         return $_cache[$name];
  30.     if (Think\Storage::has($filename,'F')){
  31.         $value      =   unserialize(Think\Storage::read($filename,'F'));
  32.         $_cache[$name]  =   $value;
  33.     } else {
  34.         $value          =   false;
  35.     }
  36.     return $value;
  37. }
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | ע

本版积分规则

QQ|Archiver|ֻ|С|ѡ̳

GMT+8, 2026-5-2 05:56 , Processed in 0.081052 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表
0.0946s