Blogger Information
Blog 145
fans 7
comment 7
visits 164533
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
ThinkPHP框架:数据库链表查询和导航渲染(导航数据递归生成)
李东亚¹⁸⁰³⁹⁵⁴⁰¹²⁰
Original
1926 people have browsed it

一.ThinkPHP框架常见的数据库查询方法

1.ThinkPHP框架自带数据库操作Db类
2.Db类中常见的方法(可以链式操作):

  • table()或name():选择要操作的表
  • where():查询条件
    • 常见的查询条件:like|in|between|
  • select():返回数据集对象,可以toArray()转成数组
  • find();查询单个返回数组,查询失败返回null,用findorEmpty()查询失败返回空数组
  • value():返回指定值,查询不到返回null
  • column():第一位参数指定某列,第二个参数指定位索引
  • order():指定以某字段排序
    • 第一个参数为字段,第二个参数为desc或者asc,默认asc
  • field():以字符型市场传入要过滤的字段
  • view($table,字段,连表条件)连表查询,也可以指定第四个参数:LEFT,RIGHT等
  • paginate($num);分页查询返回每页显示的条数,在世视图中可以直接渲染分页{paginate($num)|raw}
  • rander();单独获取分页;视图中可以直接渲染分页{rander()|raw}
  • total();获得数据总条目数量

二.获取数据生成递归导航数据

1.一般表通过id和pid两字段关联导航的分级

  1. //把数据根据id和pid生成递归导航目录
  2. public function rules($res,$pid=0){
  3. $arr=[];
  4. foreach($res as $v){
  5. // dd($v['pid'],$pid);
  6. if($v['pid']==$pid){
  7. $v['child']=self::rules($res,$v['id']);
  8. $arr[]=$v;
  9. }
  10. }
  11. return $arr;
  12. }

2.视图模板语法

  • 变量引用{$name}
  • {volist name=”name” id=”item”}循环内容{/volist}
  • {if 条件 /}渲染内容{else /}渲染内容{/if}
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post