Thinkphp将二维数组变为标签适用的一维数组方法总

复制代码 代码如下:

$projectList=arr1tag($projectList,array('','请选择'),'project_name'); 
 
//其中$list为传值过来的二维数组,$default为默认值,$k为指定的表字段 
function arr1tag($list,$default='',$k=''){ 
 $tmp=''; 
 if(array($list)){ 
  if(array($default)){ 
   $tmp[$default[0]]=$default[1];  
  } 
  foreach ($list as $k1=>$v1){ 
   $tmp[$k1+1]=$v1[$k]; 
     }  
 } 
 return $tmp; 
}


方法二:

复制代码 代码如下:

$projectList=arr2tag($projectList,array('','请选择'),''); 
 
//根据数组下标获取对应值 
function array_index2val($array,$index=0){ 
 $value=''; 
 if(is_array($array)){ 
  $i=0; 
  foreach($array as $val){ 
   if($i===$index){ 
    $value=$val; 
    break; 
   } 
   $i++; 
  } 
 } 
 return $value; 

//把数据库中调出的数组转换成可以使用模版标签的数组,其中$default为默认值,$k为指定的表字段 
function arr2tag($arr,$default=NULL,$K=NULL){ 
 $tmp=''; 
 if(is_array($arr)){ 
  if(is_array($default)){ 
   $tmp[$default[0]]=$default[1]; 
   if($type==1){ 
    $tmp[$default[2]]=$default[3];  
   } 
  } 
  foreach ($arr as $key=>$val){ 
   if(is_array($K)){ 
    $tmp[$val[$K[0]]]=$val[$K[1]]; 
   }else{ 
    $tmp[array_index2val($val,0)]=array_index2val($val,1); 
   }   
  } 
 } 
 return $tmp; 
}


方法三:

将读取数据库的内容直接转换为一维数组,该方法大多用于select标签 

复制代码 代码如下:

$this->where($where)->getField('id,name'); 
得出的内容为 
array( 
 'id' => 'name', 
)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/dbbce83940c0b6c6944fae68779de165.html