thinkphp多条件查询组合

it0_soft 2017-08-14 11:24:04

//疾病分类
if ($jbfl) {
$data = array('jbfl' => $jbfl);
}
//治疗状态
if ($zlzt) {
$data2 = array('zlzt' => $zlzt);
$data2['_logic'] = 'and';
$data2['_complex'] = $data;
}
//乡镇
if ($xiangzhen) {
$data3['xiangzhen'] = array('LIKE', "%{$xiangzhen}%");

}
//村级
if ($cunji) {
$data['cunji'] = array('LIKE', "%{$cunji}%");
}
//社区
if ($shequ) {
$data['shequ'] = array('LIKE', "%{$shequ}%");
}
//户口性质
if ($hkxz) {
$data = array('hkxz' => $hkxz);
}
//人群
if ($renqun) {
$data = array('renqun' => $renqun);
}
//年龄范围
if (is_array($age)) {
$data['age'] = array(array('gt',$age[0]), array('lt',$age[1]));
}
//户主姓名
if ($hzxm) {
$data['hzxm'] = array('LIKE', "%{$hzxm}%");
}
//身份证号
if ($sfzh) {
$data['sfzh'] = array('sfzh' => $sfzh);
}
//医疗证号
if ($ylzh) {
$data['ylzh'] = array('ylzh' => $ylzh);
}
//编号
if ($number) {
$data = array('number' => $number);
}

问下这些多条件查询组合怎么拼接,我要的条件是and连接,搞了好久我也说不清是哪错了呢
最后的查询$list = M('info')->where($data)->select();
...全文
335 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
it0_soft 2017-08-15
  • 打赏
  • 举报
回复
我的意思是多条件组合查询,就类似于购物商城那种多条件筛选,当其中一个或多个条件成立(存在)时该怎么拼接(and)都是并列条件,用TP语法,php原生我会写,
it0_soft 2017-08-14
  • 打赏
  • 举报
回复
引用 2 楼 Just_cl 的回复:
$data['c'] = 1;
$data = ['b' => 2];
echo '<pre>';
print_r($data);
die;
客户性质 人群 编号直接重新对data重新赋值了
这个我知道,只有在这些条件全部满足的情况下
Just_cl 2017-08-14
  • 打赏
  • 举报
回复
$data['c'] = 1;
$data = ['b' => 2];
echo '<pre>';
print_r($data);
die;
客户性质 人群 编号直接重新对data重新赋值了
wodebaobei12611 2017-08-14
  • 打赏
  • 举报
回复
为什么不用原生代码
$sql = 'select * from table';
$result = M()->query($sql);
傲雪星枫 2017-08-14
  • 打赏
  • 举报
回复
print_r($data); 看看对不对。 不行可以直接执行sql实现。
  • 打赏
  • 举报
回复
$data['renqun'] = array('eq' => $hkxz);
  • 打赏
  • 举报
回复
打印最后一次执行的SQL,看一下不就知道了 !

20,359

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧