• ThinkPHP第十八天(Widget类的使用,连贯操作where IN用法,缓存S函数使用)


    1、Widget类的使用方法:

      第一步:在Action同级目录中新建Widget文件夹(独立分组需要自己建立)

      第二步:根据不同功能在Widget文件夹中建立不同的Widget类,如热门文章HotWidget.class.php,最新文章NewWidget.class.php等

      第三步:在Widget文件夹中根据不同类的名称建立相应名称的模板文件夹,如HotWidget的模板文件夹问Hot,并在里面新建一个模板文件Hot.html(注意大小      写区分),在模板文件中接收下一步传递过来的数据,并显示。

      第四步:Widget类,定义细则

    Class HotWidget extends Widget{// 都继承与Widget类,3.2版本废弃了Widget类 改成了和控制器一样Controller实现widget
        
        function render($data){//使用render方法
            
            $hotList = M('blog')->field(array('id','title'))->limit(5)->select();//调用热点文章
           
            $show['hot'] = $hotList;//数组方式,用于将数据传递给模板
           
            return $this->renderFile('',$show);//Widget的renderFile方法用于载入模板文件,并赋值。这里只是载入,必须返回,前端才能使用。
            
        }  
    }

      第五步:前端模板调用定义好的Widget类方法

        {:W('Hot',[参数如果需要])} //这里的参数是数组形式,在上面类定义中render($data)中的$data用于接收。

    2、where 连贯操作IN用法:(参考表达式查询方式)可以用于选择或者删除多条数据

      假设 $cid = array(1,3,5,7,9);

      $where = array('id'=>array('IN',$cid));

      连贯操作where中条件数组,有两个以上条件时,默认关系是AND

      $where = array('name'=>$username,'password'=>$password),转化成SQL为name=$username AND password=$password,如果要改变逻辑关系可以在$where数组中加入_logic=>'or'方式改变。

    3、S(缓存名,缓存数据,保存周期单位为秒)函数

      建立缓存 S('slist',$list,3600) 表示将$list数据建立缓存,名为slist,缓存时间是1小时

      读取缓存 $list = S('slist') 将保存的名为slist的缓存数据读取,保存为$list,在类中使用该数据。

  • 相关阅读:
    IntelliJ IDEA自动补全变量名称和属性名称的快捷键
    Redis客户端 Spring Data Redis(未完)
    用画小狗的方法来解释Java中的值传递
    Java -- Arrays.asList()方法
    有趣的IntegerCache
    字符串使用点滴
    字符串拼接+和concat的区别
    在一个Excel单元格内输入多行内容
    JSTL1.2学习总结
    Android ico
  • 原文地址:https://www.cnblogs.com/huilange/p/3432682.html
Copyright © 2020-2023  润新知