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);//这样就实现了两个二维数组的拼接
版权声明:本文为博主原创文章,未经博主允许不得转载。