Thinkphpで二次元配列をラベルに適した一次元配列に変換する方法、thinkphpのディメンションをまとめました
この記事の例は、2 次元配列をラベルに適した 1 次元配列に変換する Thinkphp の方法を要約しています。参考のためにみんなで共有してください。具体的な実装方法は以下の通りです
方法 1:
コードをコピーします コードは次のとおりです:
$projectList=arr1tag($projectList,array('','選択してください'),'project_name');
// ここで、$list は渡された 2 次元配列、$default はデフォルト値、$k は指定されたテーブル フィールドです
関数 arr1tag($list,$default='',$k=''){
$tmp='';
if(配列($list)){
if(配列($default)){
$tmp[$default[0]]=$default[1];
}
foreach ($list as $k1=>$v1){
$tmp[$k1+1]=$v1[$k];
}
}
$tmp を返します。
}
方法 2:
コードをコピーします
コードは次のとおりです:
$projectList=arr2tag($projectList,array('','選択してください'),'');
//配列の添え字に基づいて対応する値を取得します
関数 array_index2val($array,$index=0){
$値='';
if(is_array($array)){
$i=0;
foreach($array as $val){
If($i===$index){
$値=$val
休憩
}
$i++;
}
}
$value を返します
}
//データベースから呼び出された配列を、テンプレートタグを使用できる配列に変換します。ここで、$default はデフォルト値、$k は指定されたテーブルフィールドです
関数 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]]
}その他{
$tmp[array_index2val($val,0)]=array_index2val($val,1);
}
}
}
$tmp を返します。
}
方法 3:
データベースから読み取ったコンテンツを直接 1 次元配列に変換します。このメソッドは主に選択タグに使用されます。
コードをコピーします
コードは次のとおりです:
$this->where($where)->getField('id,name');
結果のコンテンツは
配列(
'id' => '名前',
)
この記事で説明した内容が、皆様の ThinkPHP フレームワーク プログラミングに役立つことを願っています。
ThinkPHPプログラムを使用してこのような2次元配列を1次元配列に変換する方法
1 次元配列でどのような効果を実現したいのかよくわかりません。そうすれば、誰もが答えやすくなるでしょう。
サプリメントの効果は以前と同じです!
PHPで1次元配列を2次元配列に変換する方法