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);//這樣就實現了兩個二維數組的拼接


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章