zoukankan      html  css  js  c++  java
  • 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,在类中使用该数据。

  • 相关阅读:
    去掉ASP.NET Development Server 中的虚拟路径
    实战 SQL Server 2008 数据库误删除数据的恢复
    人的一生,到底在追求什么?
    每日一记20211215
    CentOS系统配置本地yum源
    mysql修改和查看时区
    依赖报错问题
    没想到MarkText竟然是一款比Typora更简洁优雅的markdown编辑器,完全开源免费!
    免费javascript富文本编辑器 总有一款会适合你!
    90%的人都不知道网页文字被禁止如何复制,教你几招神奇技能就可以免费解决,一定要看完!
  • 原文地址:https://www.cnblogs.com/huilange/p/3432682.html
Copyright © 2011-2022 走看看