首页 > 代码库 > YII 页面缓存

YII 页面缓存

页面缓存

1. 是否可以通过“片段缓存”实现

答:这样是不可以,因为布局文件还没有被缓存

 

2. 我们是否可以再布局进行页面缓存

答:理论上不可以,视图先加载,布局后加载 通过时间戳可以证明

用户访问控制实现页面缓存

Filters

accessControl

accessRules

<?php
/**
 * 商品控制器
 */
class GoodsController extends Controller {
    /*
     * 通过用户访问控制过滤实现页面缓存 
     * 过滤器:
     *  accessControl 是方法过滤器
     *  array()       是类过滤器
     */
    function filters(){
        return array(
            //'accessControl',  方法过滤器
            //类过滤器 实现页面整体缓存 COutputCache.php
            //只针对detail进行页面缓存
            array(
                'system.web.widgets.COutputCache + detail',
                'duration'=>1800,
                'varyByParam'=>array('id'),
            ),
        );
    }


YII 页面缓存