ThinkPHP函數詳解:F方法


我們已經了解了ThinkPHP中的S方法的用法,F方法其實是S方法的一個子集功能,僅用於簡單數據緩存,並且只能支持文件形式,不支持緩存有效期,因為采用的是PHP返回方式,所以其效率較S方法較高,因此我們也稱之為快速緩存方法。
F方法的特點是:
簡單數據緩存;
文件形式保存;
采用PHP返回數據方式加載緩存;
支持子目錄緩存以及自動創建;
支持刪除緩存和批量刪除;

寫入和讀取緩存

  1. F('data','test data');
復制代碼

默認的保存起始路徑是DATA_PATH(該常量在默認配置位於RUNTIME_PATH.'Data/'下面),也就是說會生成文件名為DATA_PATH.'data.php'的緩存文件。
注意:確保你的緩存標識的唯一,避免數據覆蓋和沖突。
下次讀取緩存數據的時候,使用:

  1. $Data = F('data');
復制代碼

我們可以采用子目錄方式保存,例如:

  1. F('user/data',$data); // 緩存寫入
  2. F('user/data'); // 讀取緩存
復制代碼

就會生成DATA_PATH.'user/data.php' 緩存文件,如果user子目錄不存在的話,則會自動創建,也可以支持多級子目錄,例如:

  1. F('level1/level2/data',$data);
復制代碼

如果需要指定緩存的起始目錄,可以用下面的方式:

  1. F('data',$data,TEMP_PATH);
復制代碼

獲取的時候則需要使用:

  1. F('data','',TEMP_PATH);
復制代碼

刪除緩存

刪除緩存也很簡單,使用:

  1. F('data',NULL); 
復制代碼

第二個參數傳入NULL,則表示刪除標識為data的數據緩存。
支持批量刪除功能,尤其是針對子目錄緩存的情況,假設我們要刪除user子目錄下面的所有緩存數據,可以使用:

  1. F('user/*',NULL);
復制代碼

又或者使用過濾條件刪除,例如:

    1. F('user/[^a]*',NULL);

 

原網址:http://www.thinkphp.cn/document/312.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM