🔓 Ultimate Webshell - Penetration Testing Tool

📖 File Reader

<?php
namespace app\admin\model;
use think\Model;

class ModGoodsAct extends Model
{
    protected $name = 'goods_act';//表名

    /**
     * 获取子级数据
     * @param $parent_id 上级id
     */
    static function goods_act_list($parent_id=0)
    {
        $list = ModGoodsAct::where("parent_id = $parent_id")->order("sort desc")->select()->toArray();
        return $list;
    }

    /**
     * 获取该分类下所有子分类
     * @param $parent_id 分类id
     * @param $type 类型:1包含当前id、0不包含
     */
    static function sublevel_act_id($parent_id,$type=0)
    {
        $act_id = '';
        if ($type == 1){
            $act_id = $parent_id.',';
        }
        while ($parent_id){
            $list = ModGoodsAct::where("parent_id in ($parent_id)")->order("sort desc")->field("id,name")->select();
            $id = '';
            foreach ($list as $k => $v){
                $id .= $v["id"].',';
            }
            $id = substr($id,0,strlen($id)-1);
            if (!empty($id)){
                $act_id .= $id.',';
            }
            $parent_id = $id;
        }
        return substr($act_id,0,strlen($act_id)-1);
    }

    /**
     * 获取分类信息
     * @param $id 分类id
     */
    static function goods_act_info($id)
    {
        $act_info = ModGoodsAct::where("id = $id")->find()->toArray();
        return $act_info;
    }

    /**
     * 获取所有上级
     * @param $id 分类id
     */
    static function parent_list_id($id)
    {
        $list = array();
        while($id){
            $act_info = ModGoodsAct::where("id = $id")->field("id,parent_id,name")->find()->toArray();
            if (!empty($act_info)){
                $list[] = $act_info;
            }
            $id = $act_info["parent_id"];
        }
        sort($list);
        return $list;
    }
}