laravel 框架实现无限级分类的方法示例


Posted in PHP onOctober 31, 2019

本文实例讲述了laravel 框架实现无限级分类的方法。分享给大家供大家参考,具体如下:

模型中的代码

namespace App\models\wxj;
use Illuminate\Support\Facades\DB;
use Session;
class Wxjlx
{
 public function r(){
//输出数据库的所有内容
  $sql=DB::table('wxjlx')->get();
  //调用fl方法
  $result=self::fl($sql,$pid=0);
   return $result;
 }
//创建方法 $data参数是数据库所有数据 $pid参数是数据库pid $le参数是为了区分显示级别的
 public function fl($data,$pid=0,$le=0){
//创建一个静态数组保存数据
  static $array=array();
//循环出所有的有关数据保存进数组
  foreach ($data as $v){
//当第一循环是pid==0 因为上面已经设置pid==0
   if($v->pid==$pid){
//这里是为了区分级别
    $v->le=$le;
//将有关数据保存如数据
    $array[]=$v;
//为了将有关数据保存数据,这里使用递归
    self::fl($data,$v->id,$le+1);
   }
  }
//将最后的内容输出返回
  return $array;
 }
}

控制器代码,只是为了调用模型中方法

class WxjlxController extends BaseController
{
 public function r(){
//实例化模型
  $p=new Wxjlx();
//调用模型方法
  $a=$p->r();
//将数据返回视图
  return view('wxj/r',['list'=>$a]);
 }
}

视图中的方法,实现效果

@foreach($list as $v)
 {{str_repeat('-|',$v->le)}}
 {{$v->id}}
 {{$v->typename}}
 {{$v->pid}}
 <?php echo '<br>'?>
 @endforeach

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

PHP 相关文章推荐
十天学会php之第二天
Oct 09 PHP
打造计数器DIY三步曲(上)
Oct 09 PHP
一个显示效果非常不错的PHP错误、异常处理类
Mar 21 PHP
PHP实现格式化文件数据大小显示的方法
Jan 03 PHP
PHP的Socket通信之UDP通信实例
Jul 02 PHP
PHP中遇到的时区问题解决方法
Jul 23 PHP
Laravel5权限管理方法详解
Jul 26 PHP
php的socket编程详解
Nov 20 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 PHP
thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例
Aug 13 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
Oct 15 PHP
关于laravel框架中的常用目录路径函数
Oct 23 PHP
tp5框架的增删改查操作示例
Oct 31 #PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
Oct 30 #PHP
thinkPHP框架乐观锁和悲观锁实例分析
Oct 30 #PHP
PHP的HTTP客户端Guzzle简单使用方法分析
Oct 30 #PHP
ThinkPHP5.0框架实现切换数据库的方法分析
Oct 30 #PHP
Laravel 中使用简单的方法跟踪用户是否在线(推荐)
Oct 30 #PHP
微信小程序发送订阅消息的方法(php 为例)
Oct 30 #PHP
You might like
smtp邮件发送一例
2006/10/09 PHP
第五章 php数组操作
2011/12/30 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
2019/03/21 PHP
JQuery 实现的页面滚动时浮动窗口控件
2009/07/10 Javascript
查看源码的工具 学习jQuery源码不错的工具
2011/12/26 Javascript
js函数调用常用方法详解
2012/12/03 Javascript
js获取url参数值的两种方式
2013/09/10 Javascript
js取模(求余数)隔行变色
2014/05/15 Javascript
jQuery中ajax的post()方法用法实例
2014/12/26 Javascript
jQuery的load()方法及其回调函数用法实例
2015/03/25 Javascript
JS实现选项卡实例详解
2015/11/17 Javascript
基于javascript实现表格的简单操作
2016/05/21 Javascript
移动开发之自适应手机屏幕宽度
2016/11/23 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
jQuery中.attr()和.data()的区别分析
2017/09/03 jQuery
javascript+html5+css3自定义弹出窗口效果
2017/10/26 Javascript
基于layui轮播图满屏是高度自适应的解决方法
2019/09/16 Javascript
JavaScript对象属性操作实例解析
2020/02/04 Javascript
利用node.js开发cli的完整步骤
2020/12/29 Javascript
给Python入门者的一些编程建议
2015/06/15 Python
使用pygame模块编写贪吃蛇的实例讲解
2018/02/05 Python
python使用循环打印所有三位数水仙花数的实例
2018/11/13 Python
Django ManyToManyField 跨越中间表查询的方法
2018/12/18 Python
Python函数中参数是传递值还是引用详解
2019/07/02 Python
详解Python实现进度条的4种方式
2020/01/15 Python
岗位职责的定义
2013/11/10 职场文书
自我鉴定怎么写
2014/01/12 职场文书
校园之星获奖感言
2014/01/29 职场文书
创业计划书模版
2014/02/05 职场文书
实习指导老师评语
2014/04/26 职场文书
市场推广策划方案
2014/06/02 职场文书
开业庆典致辞
2015/08/01 职场文书
2016领导干部廉洁自律心得体会
2016/01/13 职场文书
2016大学生诚信考试承诺书
2016/03/25 职场文书
经典法律座右铭(50句)
2019/08/15 职场文书
【DOTA2】高能暴走TK秀!PSG LGD vs ASTER - DPC 2022 WINTER TOUR CN
2022/04/02 DOTA