Detailed explanation of simple configuration and usage of ThinkPHP static cache, thinkphp static_PHP tutorial

WBOY
Release: 2016-07-12 08:56:20
Original
782 people have browsed it

Detailed explanation of simple configuration and usage of ThinkPHP static cache, thinkphp static

This article explains the simple configuration and usage of ThinkPHP static cache with examples. Share it with everyone for your reference, the details are as follows:

According to the official ThinkPHP manual: ThinkPHP has a built-in static cache class, which implements configurable static cache through the definition of static cache rules.

Enable static cache:

ThinkPHP official manual writes

To use the static caching function, you need to enable the HTML_CACHE_ON parameter and add the static caching rule file htmls.php under the project configuration directory. Both are indispensable. Otherwise the static cache will not take effect.

Add in array() of the configuration file Confconfig.php:

'HTML_CACHE_ON' => true,//开启静态缓存
'HTML_PATH' => '__APP__/html',//静态缓存文件目录,HTML_PATH可任意设置,此处设为当前项目下新建的html目录

Copy after login

Static rule definition:

ThinkPHP official manual writes

There are three ways to define static rules:

Return Array(
'ActionName'=>array('静态规则','静态缓存有效期','附加规则'), //第一种
'ModuleName:ActionName'=>array('静态规则','静态缓存有效期','附加规则'),//第二种
'*'=>array('静态规则','静态缓存有效期','附加规则'),//第三种
…更多操作的静态规则
)

Copy after login

The first is to define global static rules for operations. For example, define the static rules for all read operations as:

'read'=>array('{id}','60')

Copy after login

Among them, {id} means taking $_GET['id'] as the static cache file name, and the second parameter means caching for 60 seconds.

The second is to define static rules for the operation of a certain module. For example, we need to define the read operation of the Blog module for static caching

'Blog:read'=>array('{id}',-1)
Copy after login

The third way is to define global static caching rules. This is used in special cases and is applicable to the operation of any module, such as

'*'=>array('{$_SERVER.REQUEST_URI|md5}')
//根据当前的URL进行缓存。

Copy after login

I write here in the static cache rule file htmls.php:

<&#63;php
return array(
'getHtml' => array('{:action}', -1),//-1表示永久缓存
);
&#63;>

Copy after login

The above static caching rule means that the static rules that define all getHtml operations are:

'getHtml'=>array('{:action}',-1)

Copy after login

{:action} indicates that the current operation name is the static cache file name.

Also write in the LibActionIndexAction.class.php file:

<&#63;php
class IndexAction extends Action{
  //在当前项目的html目录下生成getHtml.shtml
  public function getHtml() {
   header('Content-type:text/html;charset=utf-8');
   $this->assign('title', '生成html文件');
   $this->assign('info', '生成html文件');
   $this->display();
  }
}
&#63;>

Copy after login

Write in TpldefaultindexgetHtml.html:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
  <title>{$title}</title>
 </head>
 <body>
  <h2>{$info}</h2>
 </body>
</html>

Copy after login

Then enter: http://127.0.0.1/myApp/index.php/index/getHtml in the browser and you can see the expected page.

After refreshing the page, the browser address bar will change, as follows:

ps: If you use apache, firefox and opera, they may not support shtml files. You can find "AddType text/html .shtml" and "AddOutputFilter INCLUDES .shtml" in the httpd.conf file and remove the previous "# respectively. "That's it.

Readers who are interested in more thinkPHP-related content can check out the special topics on this site: "ThinkPHP Getting Started Tutorial", "ThinkPHP Common Methods Summary", "Smarty Template Basic Tutorial" and "PHP Template Technology Summary".

I hope this article will be helpful to everyone’s PHP programming based on the ThinkPHP framework.

Articles you may be interested in:

  • Analysis of static cache usage of thinkphp
  • thinkPHP implements MemCache distributed caching function
  • A brief analysis of the speed of ThinkPHP caching Caching (F method) and dynamic caching (S method) (daily arrangement)
  • How to turn off caching in Thinkphp
  • ThinkPHP file caching class code sharing
  • Detailed explanation of thinkphp caching technology
  • ThinkPHP implements one-click cache clearing method
  • How to modify ThinkPHP cache to Memcache
  • Overview of ThinkPHP cache method S()
  • Using the F method in ThinkPHP to implement Fast cache instance

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1113701.htmlTechArticleDetailed explanation of simple configuration and usage of ThinkPHP static cache, thinkphp static This article explains the simple configuration and usage of ThinkPHP static cache with examples . Share it with everyone for your reference, specifically...
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!