"烦人的马甲"请进,还是分类循环的问题 本帖最后由 Stephen1967 于 2011-07-14 21:52:01 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 function getNames($id) { foreach($ar as $k => $v) { if ($id==$k){ $result=$v; }else{ if (is_array($v)) { getNames($k) } } }}echo getNames(68); 有两个子类的时候你想怎么输出,需要考虑getNames(0)这种情况吗? 脑子有点短路了,不知道是不是你想要的效果。。$ar = Array( 0 => Array ( 0 => 3, 1 => 0, 2 => '错误类别1' ), 1 => Array ( 0 => 60, 1 => 0, 2 => '错误类别2' ), 2 => Array ( 0 => 58, 1 => 3, 2 => '错字23' ), 3 => Array ( 0 => 61, 1 => 60, 2 => '错别字' ), 4 => Array ( 0 => 67, 1 => 2, 2 => '其它问题' ), 5 => Array ( 0 => 68, 1 => 55, 2 => '不流畅' ), 6 => Array ( 0 => 69, 1 => 55, 2 => '连接错误' ), 7 => Array ( 0 => 70, 1 => 55, 2 => '播放中断' ), 8 => Array ( 0 => 2, 1 => 0, 2 => '错误类别3' ), 9 => Array ( 0 => 55, 1 => 2, 2 => '点播视频' ), 10 => Array ( 0 => 57, 1 => 3, 2 => '阿斯顿发送地方22' ), 11 => Array ( 0 => 59, 1 => 2, 2 => '常见问题' ));echo "<pre>";//print_r($ar);$ar_id_pid = $ar_id_name = array();foreach($ar as $v) { $ar_id_pid[$v[0]] = $v[1]; $ar_id_name[$v[0]] = $v[2];}function getChildren($id, $ar_id_pid, $ar_id_name, $pre) { echo $pre.$ar_id_name[$id]."<br />"; $keys = array_keys($ar_id_pid, $id); if (count($keys) > 0) { foreach($keys as $v) getChildren($v, $ar_id_pid, $ar_id_name, $pre.'>>'); }}getChildren(2, $ar_id_pid, $ar_id_name, '');/*_________输出错误类别3>>其它问题>>点播视频>>>>不流畅>>>>连接错误>>>>播放中断>>常见问题*/ getChildren(55, $ar_id_pid, $ar_id_name, '');/*点播视频>>不流畅>>连接错误>>播放中断*/getChildren(67, $ar_id_pid, $ar_id_name, '');//其它问题 为啥所有按钮只控制同一行数据??? SQL语句这样的写法是否存在问题 如果连接数据库localhost问题 想买一套php程序(内详) file_get_contents的问题???? 邀请Web程序员加入新创立的美国公司idapted(期权+丰厚待遇) 如何让php程序在windows服务器后台运行(20分)? 怎么样也才能解析PHP3的文件? 怎样将doc,xls,html,htm,pdf文档转为Txt文档??谢谢 Win2k Server下用php读写Excel文件的严重问题 我用php excelreader读取xls文件,显示的文件是乱码。编码一致也是这样 求助解析php的xml
foreach($ar as $k => $v) {
if ($id==$k){
$result=$v;
}else{
if (is_array($v)) {
getNames($k)
}
}
}
}
echo getNames(68);
$ar =
Array
(
0 => Array
(
0 => 3,
1 => 0,
2 => '错误类别1'
), 1 => Array
(
0 => 60,
1 => 0,
2 => '错误类别2'
), 2 => Array
(
0 => 58,
1 => 3,
2 => '错字23'
), 3 => Array
(
0 => 61,
1 => 60,
2 => '错别字'
), 4 => Array
(
0 => 67,
1 => 2,
2 => '其它问题'
), 5 => Array
(
0 => 68,
1 => 55,
2 => '不流畅'
), 6 => Array
(
0 => 69,
1 => 55,
2 => '连接错误'
), 7 => Array
(
0 => 70,
1 => 55,
2 => '播放中断'
), 8 => Array
(
0 => 2,
1 => 0,
2 => '错误类别3'
), 9 => Array
(
0 => 55,
1 => 2,
2 => '点播视频'
), 10 => Array
(
0 => 57,
1 => 3,
2 => '阿斯顿发送地方22'
), 11 => Array
(
0 => 59,
1 => 2,
2 => '常见问题'
));
echo "<pre>";
//print_r($ar);$ar_id_pid = $ar_id_name = array();
foreach($ar as $v) {
$ar_id_pid[$v[0]] = $v[1];
$ar_id_name[$v[0]] = $v[2];
}
function getChildren($id, $ar_id_pid, $ar_id_name, $pre) {
echo $pre.$ar_id_name[$id]."<br />";
$keys = array_keys($ar_id_pid, $id);
if (count($keys) > 0) {
foreach($keys as $v) getChildren($v, $ar_id_pid, $ar_id_name, $pre.'>>');
}
}
getChildren(2, $ar_id_pid, $ar_id_name, '');/*_________输出
错误类别3
>>其它问题
>>点播视频
>>>>不流畅
>>>>连接错误
>>>>播放中断
>>常见问题*/
/*
点播视频
>>不流畅
>>连接错误
>>播放中断
*/
getChildren(67, $ar_id_pid, $ar_id_name, '');
//其它问题