私はこのような配列を持っています($ optDir変数に格納されています):
Array
(
[0] => Array
(
[id] => 8
[title] => Atasan Pria
[idparent] => 5
)
[1] => Array
(
[id] => 5
[title] => Fashion
[idparent] => 0
)
[2] => Array
(
[id] => 7
[title] => Motor
[idparent] => 0
)
[3] => Array
(
[id] => 6
[title] => Mobil
[idparent] => 0
)
[4] => Array
(
[id] => 9
[title] => Hem
[idparent] => 8
)
)
そして私はこのようなPHPコードを持っています:
function optCatAds($pos=0, $level=0){
global $optDir; $opt = "";
$n = count($optDir);
for($i=0;$i<$n;$i++){
$l = $level*3;
$sign=""; for ($z=0;$z<=$l;$z++){$sign.=" ";}
if($optDir[$i]['idparent']==$pos){
$opt .= '<option value="'.$optDir[$i][id].'">'.$sign.$optDir[$i][title].'</option>';
optCatAds($optDir[$i][id], $level + 1);
}
}
return $opt;
}
optCatAds関数を呼び出すと、次のような出力が得られます。
<option value="5">Fashion</option>
<option value="6">Mobil</option>
<option value="7">Motor</option>
しかし、私は以下のような出力をしたいと思います:
<option value="5">Fashion</option>
<option value="8"> Atasan Pria</option>
<option value="9"> Hem</option>
<option value="6">Mobil</option>
<option value="7">Motor</option>
条件:
ファッション、モービル、モーター<-親
ファッションには子供がいるメンズトップス
メンズトップスには子供裾があります
誰かが私を助けることができますか?あなたの助けに感謝します。
これはあなたのためにうまくいくでしょう
$optDir = Array(Array("id"=>8,"title"=>"Atasan Pria","idparent"=>5),
Array("id"=>5,"title"=>"Fashion","idparent"=>0),
Array("id"=>7,"title"=>"Motor","idparent"=>0),
Array("id"=>6,"title"=>"Mobil","idparent"=>0),
Array("id"=>9,"title"=>"Hem","idparent"=>8)
);
function optCatAds($pos=0, $level=0)
{
global $optDir;$opt;
for($i=0;$i<count($optDir);$i++)
{
$l = $level*3;
$sign="";
for ($z=0;$z<$l;$z++){$sign.=" ";}
if($optDir[$i]['idparent']==$pos)
{
$opt .= '<option value="'.$optDir[$i]['id'].'">'.$sign.$optDir[$i]['title'].'</option>';
$opt .= optCatAds($optDir[$i]['id'], $level + 1);
}
}
return $opt;
}
$res = optCatAds($pos=0, $level=0);
echo "<select>{$res}</select>";
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加