thinkphp通过第一个查询出来的值做为第二个查询的条件
$basicsetupid=M('basicsetup')->field('bdatavalue')->where('btype="semester"')->select...
$basicsetupid=M('basicsetup')->field('bdatavalue')->where('btype="semester"')->select();
print_r($basicsetupid);die;
$semester=M('semester')->field('srname')->where(array('srid'=>$basicsetupid))->select();
print_r($semester);die;
$this->assign('semester',$$semester);
第一行,是我要取出bdatavalue的值,做为下面这个查询语句的条件,本人新手,求大神指导,第一行打印出来的是这个 Array ( [0] => Array([bdatavalue] => 1) ),要怎么取出里面的bdatavalue=1做为查询条件? 展开
print_r($basicsetupid);die;
$semester=M('semester')->field('srname')->where(array('srid'=>$basicsetupid))->select();
print_r($semester);die;
$this->assign('semester',$$semester);
第一行,是我要取出bdatavalue的值,做为下面这个查询语句的条件,本人新手,求大神指导,第一行打印出来的是这个 Array ( [0] => Array([bdatavalue] => 1) ),要怎么取出里面的bdatavalue=1做为查询条件? 展开
1个回答
展开全部
$basicsetupid=M('basicsetup')->where('btype="semester"')->getField('bdatavalue',true); // 直接得到bdatavalue的数组,假设可能有多个符合条件的结果
$semester=M('semester')->field('srname')->where(array('srid'=>array('in',$basicsetupid)))->select(); // 用表达式查询的in
$this->assign('semester',$semester);
追问
谢谢,你的是正确的,我还想问一下,你这样写的话,$this->assign('semester',$semester);这句在模板页调用$semester 出现的是Array,而不是值哦。。
追答
对的,select()获得的结果是数组啊,一般在模板页用volist标签输出的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询