文件緩存是把數據保存在硬盤上的一種緩存方式。可以在一定程度上減少數據庫資源和處理器資源,但訪問量大時會造成大量硬盤讀寫。
YurunPHP文件緩存功能支持原始數據存儲和序列化數據存儲。
原始數據存儲一般用于需要include的緩存。
序列化數據存儲支持存儲字符串、數組等幾乎所有類型的數據,并且可以設置有效時間,且支持防止數據泄露功能。
建議根據實際情況來選擇合適的緩存方式。
## 相關配置項
#### CACHE_PATH
緩存目錄文件夾名,默認為Cache
#### CACHE_EXT
緩存文件擴展名,默認為.php
## 方法
#### 寫入緩存
~~~
Cache::set($cacheName, $value = null, $option = array(), $alias = null)
~~~
| 參數名 | 描述 |
| -- | -- |
| $cacheName | 緩存名稱 |
| $value | 緩存數據 |
| $option | 額外參數 |
| $alias | 緩存驅動別名 |
~~~
// 緩存文件保存路徑為【緩存目錄/】,緩存文件內容是序列化的YurunPHP
Cache::set('yurun','YurunPHP');
// 緩存文件保存路徑為【緩存目錄/people/】,緩存文件內容是YurunPHP
Cache::set('people/yurun','YurunPHP',array('raw'=>1));
// 緩存文件有效期設為3600秒
Cache::set('yurun','YurunPHP',array('expire'=>3600));
~~~
#### 讀取緩存
~~~
Cache::get($cacheName, $default = false, $option = array(), $alias = null)
~~~
| 參數名 | 描述 |
| -- | -- |
| $cacheName | 緩存名稱 |
| $default | 緩存不存在或過期時返回的值,默認為false |
| $option | 額外參數 |
| $alias | 緩存驅動別名 |
~~~
// 獲取緩存,如果不存在則返回YurunPHP
Cache::get('yurun','YurunPHP');
// 獲取緩存文件真實內容
Cache::get('yurun','YurunPHP',array('raw'=>1));
// 緩存不存在時的回調,如果需要保存緩存需要手動調用Cache::set()方法
echo Cache::get('abc', function(){
return '返回內容';
});
~~~
#### 刪除緩存
~~~
Cache::remove($cacheName, $option = array(), $alias = null)
~~~
| 參數名 | 描述 |
| -- | -- |
| $cacheName | 緩存名稱 |
| $option | 額外參數 |
| $alias | 緩存驅動別名 |
~~~
Cache::remove('yurun');
~~~
#### 清空緩存目錄
~~~
Cache::clear($alias = null)
~~~
| 參數名 | 描述 |
| -- | -- |
| $alias | 緩存驅動別名 |
~~~
Cache::clear();
~~~
#### 判斷緩存是否存在
~~~
Cache::cacheExists($cacheName, $option = array(), $alias = null)
~~~
| 參數名 | 描述 |
| -- | -- |
| $cacheName | 緩存名稱 |
| $option | 額外參數 |
| $alias | 緩存驅動別名 |
~~~
Cache::cacheExists('yurun');
~~~
- 序言
- 有些話想說
- 基礎入門
- 簡介
- 下載安裝YurunPHP
- 運行環境
- 開發規范
- 目錄結構
- 模塊
- 控制器
- 自動加載
- 手動加載
- 項目配置
- 入口文件
- 項目目錄結構
- 配置文件
- 驅動配置
- 數據庫配置
- 項目初始化處理
- 框架編譯
- 項目部署
- 控制器
- 創建控制器
- 加載模版顯示頁面
- AJAX返回數據
- 模型
- 創建模型
- 實例化模型
- 數據管理
- 連貫操作
- distinct
- field
- from
- where
- wherePk
- group
- having
- order
- limit
- join
- page
- headTotal/footTotal
- 連貫操作收尾方法
- select
- selectPage
- buildSQL
- selectValue
- selectBy
- getBy
- getByPk
- random
- inc
- dec
- add
- edit
- delete
- 合計函數
- save
- 執行SQL語句
- 創建數據并驗證
- 字段映射
- 增刪改查前置和后置
- Response類
- GET/POST/COOKIE/REQUEST
- Cookie
- Session
- 如何自定義Session存儲
- 數據庫操作
- 常用操作
- 查詢記錄
- 存儲過程
- 數據庫函數
- MSSQL
- 視圖
- 調用視圖
- 給視圖傳值
- 模版引擎
- 輸出
- 使用PHP代碼
- 模版標簽
- if
- switch
- for
- counter
- foreach
- include
- js/css/image
- url
- origin
- 模版常量替換
- 后臺視圖控件
- 通用屬性用法
- 數據集綁定
- 下拉框(select)
- 單選框(radio)
- 單選框組(radiogroup)
- 選擇框(checkbox)
- 選擇框組(checkboxgroup)
- 表格(table)
- 文本框(textbox)
- 分頁條(pagebar)
- 數據驗證
- 驗證方法
- between
- betweenEqual
- empty_str
- not_empty_str
- regex
- length
- lengthChar
- mobile
- tel
- phone
- postcode
- url
- ip
- lt/gt/ltEqual/gtEqual
- equal/unequal
- in/notin
- idcard
- 路由
- 路由配置
- 自定義分層
- 緩存
- 緩存配置
- 使用緩存
- 配置
- 配置驅動配置
- 使用配置
- 過濾域名
- 日志
- 日志驅動配置
- 文件日志
- 事件
- 事件列表
- 插件
- 多語言支持
- 定時任務
- API接口開發
- CLI命令行模式
- Soap WebService