admin管理员组文章数量:1599536
## 简介
文件名:condition.class.php
名称:筛选条件生成辅助
作用:用于简化筛选,搜索条件生成时的大量代码;
作者:高飞
QQ:56667115
官网:[http://www.dtmoban/]()
## 为何要使用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 吧
# 打赏
您的支持是我最大的动力哦,立即通过微信扫一扫犒劳下高飞吧!
![](images/weixin.jpg)
版权声明:本文标题:php condition 语法,condition.class.php 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1728321566a1153890.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论