• 童攀TP5企业网站实战笔记


    $this->assign('data',$data)
    

      

    ---恢复内容开始---

    1. return view();   载入视图
    2. {include file='public/head'} 包含文件
    3. {:url('admin/add')} 视图中跳转链接
    4. input('post.'); 获取post来的全部数据
    5.  request()->isPost() 判断数据是不是post过来的
       if(request()->isPost()){
                  $data=input('post.');
                  $res=db('admin')->insert($data);
                  if($res){
                      $this->success('添加管理员成功!',url('lst'));
                  }else{
                      $this->error("添加管理员失败!");
                  }
              }
      
    6.  $res=db('admin')->field('name')->select(); select是查询所有数组,find()是查询一条记录
    7.  $res=db('admin')->where(array('id'=>1))->find();
    8. 实例化表  1 助手函数  db('admin')  2 Db()类操作 先引入 use thinkDb;  再实例化  $admin=Db::name('admin') 
    9. 栏目无限极分类
      class Cate extends Model
      {
      	function catetree()
      	{
      		$cateres=$this->select();
      		return $this->sort($cateres);
      	}
      
      	function sort($data,$pid=0,$level=0)
      	{
      		static $arr=array();
      		foreach($data as $v){
      			if($v['pid']==$pid){
      				$v['level']=$level;
      				$arr[]=$v;
      				$this->sort($data,$v['id'],$level+1);
      			}
      		}
      		return $arr;
      	}
          
      }
      //调用该方法
      $admin->catetree();
      echo str_repeat('  |--',$cate['level']);

        

    10. 在模板中进行条件判断       {if condition='$cate.type eq 1'}  单页    {else}  列表  {/if}
    11. 前置操作
      class Index extends Controller
      {
          protected $beforeActionList = [
              'first',
              'second' =>  ['except'=>'hello'],
              'three'  =>  ['only'=>'hello,data'],
          ];
      ……
      …………
      }
      

       a、执行本类的所有方法前都会先执行first方法
         b、除了hello方法,执行本类的其他方法前都会先执行first方法
        c、只有执行hello和data方法前才会执行three方法

    12. {:url('del',array('id'=>$admin['id']))}  带参数的url跳转,注意参数值不能用点模式

    13. 给模板分配数据

      $this->assign('data',$data)
      

      以数组形式给模板分配多条数据

      $this->assign(array(
          		'cates'=>$cates,
          		'cateres'=>$cateres
          		));
      

        

    14. <div style="padding-top:10px;">
                          {$artres->render()}
                      </div>

    15. {if condition="$art.author eq ''"} 未填写
                                      {else}
                                      {$art.author}
                                      {/if}

    16. 排序

      <td align="center"><input name="{$link.id}" type="text" style="50px; text-align:center;" value="{$link.sort}"></td>
      

        

        if(request()->isPost()){
                  $sorts=input('post.');
                  foreach ($sorts as $k => $v) {
                      $link->update(['id'=>$k,'sort'=>$v]);
                  }
                  $this->success('更新排序成功!',url('lst'));
                  return;
              }
      

        

    17. 控制器驼峰法命名,比如AuthGroup,在浏览器上访问时要输入auth_group

    18.  <!-- 引用百度编辑器 -->
             
                 <script src="__ADMIN__/ueditor/ueditor.config.js"></script>
                 <script src="__ADMIN__/ueditor/ueditor.all.min.js"></script>
             
                  <script type="text/javascript">
             
                 //实例化编辑器
                 //建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
                 UE.getEditor('content',{initialFrameWidth:800,initialFrameHeight:400,});//'content'为要引入百度编辑器的文本域的id
                 </script>
      

        

    19. 验证码
      视图html文件添加:

      <div><img src="{:captcha_src()}" alt="captcha" style=" 100px;height: 30px;cursor: pointer;" 
      onclick="this.src='{:captcha_src()}?'+Math.random();" /></div>
      
    20. 在模板中调用session值
      {$Request.session.name}


         

  • 相关阅读:
    shell---telnet shell实现
    设计模式-建造者模式
    关于Http2
    转载Resharper使用
    设计模式-原型模式
    设计模式-代理模式
    设计模式-装饰器模式
    设计模式-简单工厂和策略模式
    C#直接发送打印机命令到打印机及ZPL常用打印命令
    C#打印机操作类
  • 原文地址:https://www.cnblogs.com/yolo-bean/p/7452784.html
Copyright © 2020-2023  润新知