ThinkPHP 3.1快速入門:緩存

來源:互聯網
上載者:User
關鍵字 緩存 快速入門 ThinkPHP

在專案中,合理的使用緩存對性能有較大的説明。 ThinkPHP提供了方便的緩存方式,包括資料緩存、靜態緩存和查詢緩存等,支援包括檔方式、APC、Db、Memcache、Shmop、Sqlite、Redis、 Eaccelerator和Xcache在內的動態資料緩存類型,以及17813.html">可定制的靜態緩存規則,並提供了快捷方法進行存取操作。

資料緩存

在ThinkPHP中進行快取作業,一般情況下並不需要直接操作緩存類,因為系統內置對快取作業進行了封裝,3.1版本推薦的資料緩存方法是cache方法,基本的用法是:

1 緩存初始化

cache(array('type'=>'xcache','expire'=>60));緩存初始化可以支援的參數根據不同的緩存方式有所區別,常用的參數是:

expire 緩存有效期(時間為秒) prefix 緩存標識首碼 type 緩存類型

核心版本只有HTTP://www.aliyun.com/zixun/aggregation/19352.html">File緩存方式的支援,其他的緩存方式支援需要下載單獨的緩存驅動,並放入系統目錄的Extend/ Driver/Cache/下面,否則會出現不支援緩存類型的錯誤提示。 有些緩存方式會有一些自身特殊的參數,例如Memcache緩存,還需要配置其他的參數:

cache(array('type'=>'memcache','host'=>'192.168.1.10','port'=>'11211','prefix'=>'think',' expire'=>60));對於全域的緩存方式,一般我們建議添加prefix(緩存首碼)參數用以區分不同的應用,以免混淆。

2 緩存設置

cache('a',$value);會按照緩存初始化時候的參數進行緩存資料,也可以在緩存設置的時候改變參數,例如: cache('a',$value,300);// 緩存資料300秒甚至改變之前的緩存方式或者更多的參數: cache('a',$value,array('type'=>'file','expire'=>300));// 採用檔方式緩存資料300秒如果你在緩存設置的時候採用上面的陣列方式傳入參數的話, 會影響到後面的緩存存取。

3 緩存讀取

$value = cache('a');緩存讀取的是前面緩存設置的值,這個值會受緩存初始化或者緩存設置的時候傳入的參數影響。


如果緩存標識不存在或者已經過期,則返回false,否則返回緩存值。

4 緩存刪除

刪除緩存標識為name的緩存資料。

如果要切換緩存方式,可以再次進行緩存初始化操作或者使用下面的方式: 如果你設置了緩存首碼的話,對應的快取作業只是對應該緩存首碼標識的,不會影響其他的緩存。
資料緩存可以支援緩存佇列,簡單的說就是可以限制緩存的數量,只需要在初始化的時候指定length參數:

cache(array('type'=>'xcache','length'=>100,'expire'=>60));設置了length參數後,系統只會緩存最近的100條緩存資料。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.