in查询和两个二维数组的拼接


 1、当某个教练查看自己学员的时候,可以通过获取学员身份证号,然后在怎么通过不同的身份证号获取学员的登录名(可用视图实现,userinfo表和studentinfo表进行拼接)

解决:

functionarrTostr ($arr)//把二维数组转化为字符串

{

    foreach ($arr as $v)

    {

        $v = join(",",$v); //可以用implode将一维数组转换为用逗号连接的字符串

        $temp[] = $v;

    }

    $t="";

    foreach($temp as $v){

        $t.="".$v.",";

    }

    $t=substr($t,0,-1);

    return $t;

}

 

$rs1= M('studentinfo')->field('IDcard')->where($where)->select(); //二维数组

        $rs2 = $this->arrTostr($rs1);//通过arr2str()函数把二维数组rs1转化成字符串rs2

        $sql['IDcard'] = array('in', $rs2);

        $b=M('userinfo')->field(array('Loginname'))->where($sql)->select()

注意:implode()函数只对一维数组和字符串有用


2、        两个二维数组怎么对应拼接起来,用array_merge()好像不行,并不是一一对应拼接

解决:

$a= M('studentinfo')->field(array('Studentname', 'IDcard','Sex', 'Phone', 'Signdate', 'Remarks'))->where($where)->select();

$b=M('userinfo')->field(array('Loginname'))->where($sql)->select();

//$a,$b表示要拼接的两个数组

下面实现拼接

$rs=array();

Foreach($a as $key=>$r){

$rs[]=array_merge($b[$key],$r);

}

Print_r($rs);//这样就实现了两个二维数组的拼接



注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: