读书人

怎么把一个多维数组,按指定模式排列

发布时间: 2012-10-19 16:53:36 作者: rapoo

怎样把一个多维数组,按指定模式排列
[code=PHP]Array
(
[0] => Array
(
[0] => 63
[cate_id] => 63
[1] => 34
[pid] => 34
[2] => 奥迪A6L新型C6原厂资料
[cate_name] => 奥迪A6L新型C6原厂资料
[3] => 0
[cate_size] => 0
[4] => 0
[show_order] => 0
[5] => 0
[is_hidden] => 0
)

[1] => Array
(
[0] => Array
(
[0] => 64
[cate_id] => 64
[1] => 63
[pid] => 63
[2] => 奥迪A6L新型C6原厂资料电路图
[cate_name] => 奥迪A6L新型C6原厂资料电路图
[3] => 0
[cate_size] => 0
[4] => 0


[show_order] => 0
[5] => 0
[is_hidden] => 0
)

[1] => Array
(
[0] => Array
(
[0] => 65
[cate_id] => 65
[1] => 64
[pid] => 64
[2] => 奥迪A6L新型C6原厂资料收音机电路图
[cate_name] => 奥迪A6L新型C6原厂资料收音机电路图
[3] => 0
[cate_size] => 0
[4] => 0
[show_order] => 0
[5] => 0


[is_hidden] => 0
)

[1] => Array
(
)

)

)

[2] => Array
(
[0] => 66
[cate_id] => 66
[1] => 34
[pid] => 34
[2] => 奥迪A7原厂资料
[cate_name] => 奥迪A7原厂资料
[3] => 0
[cate_size] => 0
[4] => 0
[show_order] => 0
[5] => 0
[is_hidden] => 0
)

[3] => Array
(
[0] => Array
(
[0] => 67
[cate_id] => 67
[1] => 66


[pid] => 66
[2] => 奥迪a7a7原厂资料
[cate_name] => 奥迪a7a7原厂资料
[3] => 0
[cate_size] => 0
[4] => 0
[show_order] => 0
[5] => 0
[is_hidden] => 0
)

[1] => Array
(
[0] => Array
(
[0] => 68
[cate_id] => 68
[1] => 67
[pid] => 67
[2] => 奥迪a7a7a7a7原厂资料
[cate_name] => 奥迪a7a7a7a7原厂资料


[3] => 0
[cate_size] => 0
[4] => 0
[show_order] => 0
[5] => 0
[is_hidden] => 0
)

[1] => Array
(
[0] => Array
(
[0] => 69
[cate_id] => 69
[1] => 68
[pid] => 68
[2] => 奥迪a7a7a7a7a7a7a7a7原厂资料


[cate_name] => 奥迪a7a7a7a7a7a7a7a7原厂资料
[3] => 0
[cate_size] => 0
[4] => 0
[show_order] => 0
[5] => 0
[is_hidden] => 0
)

[1] => Array
(
)

)

)

)

)[/code]


怎么把这个数组按照这这样的样式式排列?


value为cate_id
[code=HTML] <select>
<option value= "63 " > 奥迪A6L新型C6原厂资料 </option>
<option value= "64 " >   奥迪A6L新型C6原厂资料电路图 </option>


<option value= "65 " >     奥迪A6L新型C6原厂资料收音机电路图 </option>
<option value= "66 " > 奥迪A7原厂资料 </option>
<option value= "67 " >   奥迪a7a7原厂资料 </option>
<option value= "68 " >     奥迪a7a7a7a7原厂资料 </option>
<option value= "69 " >       奥迪a7a7a7a7a7a7a7a7原厂资料 </option>
</select> [/code]


这只是一个例子,这个数组可能是三维,四维的...

[解决办法]

PHP code
function func($ar, $deep=0) {  froeach($ar as $item) {    if(isset($item['cate_id'])) {      echo "<option value='$item[cate_id]'>".str_repeat(' ', $deep*2)."$item[cate_name]</option>";    else if(is_array($item)) func($item, $deep+1);  } . }echo '<select>';func($ar);echo '</select>'; 

读书人网 >PHP

热点推荐