欢迎来到DT模板堂 登录 注册
DT教程
当前位置:首页 > 教程 > 二开教程> DTapi教程:21.筛选条件生成中间件

DTapi教程:21.筛选条件生成中间件

发表:DESTOON模板堂(dtmoban.com) 发表时间:2019-10-11
 

简介

文件名:condition.class.php
名称:筛选条件生成辅助
作用:用于简化筛选,搜索条件生成时的大量代码;
作者:高飞
QQ:56667115
官网:http://www.dtmoban.com/

为何要使用condition方法

condition不但简化了大量代码,让destoon二次开发变得更简单,同时也有严格的过虑机制。
在安全方面开发者不用再逐个页面的维护代码,只需要更新condition.class.php即可。

示列

原代码:

 $thumb = isset($thumb) ? intval($thumb) : 0; $vip = isset($vip) ? intval($vip) : 0; $typeid = isset($typeid) && isset($TYPE[$typeid]) ? intval($typeid) : 99; if(!$areaid && $cityid && strpos($DT_URL, 'areaid') === false) {    $areaid = $cityid;    $ARE = $AREA[$cityid]; } $fromdate = isset($fromdate) && is_date($fromdate) ? $fromdate : ''; $fromtime = $fromdate ? strtotime($fromdate.' 0:0:0') : 0; $todate = isset($todate) && is_date($todate) ? $todate : ''; $totime = $todate ? strtotime($todate.' 23:59:59') : 0; $condition = ''; if($catid) $condition .= ($CAT['child']) ? " AND catid IN (".$CAT['arrchildid'].")" : " AND catid=$catid"; if($areaid) $condition .= ($ARE['child']) ? " AND areaid IN (".$ARE['arrchildid'].")" : " AND areaid=$areaid"; if($thumb) $condition .= " AND thumb<>''"; if($vip) $condition .= " AND vip>0"; if($typeid != 99) $condition .= " AND typeid=$typeid"; if($fromtime) $condition .= " AND edittime>=$fromtime"; if($totime) $condition .= " AND edittime<=$totime";  

简化后代码:

 $condition = condition::field('catid[int],areaid[int]')->and()->field('thumb','<>','null')->and()->field('vip','>','0')->and()->minmax('edittime[time]',$fromdate,$todate)->and()->field('typeid','=',$typeid,99)->return(); 

以上筛选代码在destoon系统中各种常用条件都涉及到了,这样是不是变得简单多了。
那么下面开始开心的跟着高飞一起来学习 condition.class.php 吧



电话: 1392 8916 720   客服QQ:56667115

© 2014-2015 DESTOON模板堂(dtmoban.com) 版权所有,并保留所有权利。

二维码

扫一扫
获取更多资讯