为什么我的函数不能返回值? for里面执行了么?没数据不知道你逻辑怎走的啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个我可以确定执行了,如果把return 换成echo 是有正确输出的. 递归什么时候结束,什么时候才return结果.. 递归的问题,只返回最一个次的值,你那个$arrCrumb基上上没用,要传地址进去再可以运行用 &$arrCrumb 3Q wxq4100798(aa) 提的宝贵意见,通过传址来修改外部的变量数组,基本可以解决问题。但搞不明白还是返回不了任何值,不管是数组还是普通变量。---------------------------------$arrCrumb1 = array();function getArrCrumb($id,&$arrCrumb){global $conn; $query = "select categoryID,categoryName,categoryFID from koan_category where categoryID='$id'"; $arrCate = $conn->GetRow($query); $arrCrumb[] = $arrCate; if($arrCate[2] == '00000000'){ //根节点标示:“00000000” for($i=(count($arrCrumb)-1); $i>=0; $i--){ $crumb .= $arrCrumb[$i][1]." > "; } return $crumb; //返回一个字符串 }else{ getArrCrumb($arrCate[2],&$arrCrumb); } }echo getArrCrumb('02010500',&$arrCrumb1); //没有任何输出print_r($arrCrumb1); //已更改了 askzhigang(轻风慢语) 怎么没有执行到return?能具体说明一下吗? function getArrCrumb($id,&$arrCrumb){global $conn; $query = "select categoryID,categoryName,categoryFID from koan_category where categoryID='$id'"; $arrCate = $conn->GetRow($query); $arrCrumb[] = $arrCate; if($arrCate[2] == '00000000'){ //根节点标示:“00000000” for($i=(count($arrCrumb)-1); $i>=0; $i--){ $crumb .= $arrCrumb[$i][1]." > "; } return $crumb; //返回一个字符串 }else{ return getArrCrumb($arrCate[2],&$arrCrumb);//为什么这里不return回去呢? } } 多谢Meteorlet(http://smartdict.cn)一语道破,使在下豁然开朗啊,佩服佩服!也谢谢wxq4100798(aa)给我的提示,虽说他说的不全对,但还是有些帮助的,至少可以解决问题。 查询金额的写法 调用存放在mysql中的图片,如何在客户端展示在页面上 【求助】PHP随机生成一组数字且不重复 并赋值到input 变量传递问题 求助:做一个B/S结构的MIS,用什么语言开发比较好? 在linux上访问yii framework 生成的demo报错,求帮助 smarty的小问题 身份证号码 socket错误。 表单无法提交,气死我了..高手进...... 做acm测试系统要学习哪些知识? 懂LINUX下重编译安装PHP的过来帮忙
用 &$arrCrumb
---------------------------------
$arrCrumb1 = array();
function getArrCrumb($id,&$arrCrumb){
global $conn;
$query = "select categoryID,categoryName,categoryFID from koan_category where categoryID='$id'";
$arrCate = $conn->GetRow($query);
$arrCrumb[] = $arrCate; if($arrCate[2] == '00000000'){ //根节点标示:“00000000”
for($i=(count($arrCrumb)-1); $i>=0; $i--){
$crumb .= $arrCrumb[$i][1]." > ";
}
return $crumb; //返回一个字符串
}else{
getArrCrumb($arrCate[2],&$arrCrumb);
}
}
echo getArrCrumb('02010500',&$arrCrumb1); //没有任何输出print_r($arrCrumb1); //已更改了
怎么没有执行到return?能具体说明一下吗?
global $conn;
$query = "select categoryID,categoryName,categoryFID from koan_category where categoryID='$id'";
$arrCate = $conn->GetRow($query);
$arrCrumb[] = $arrCate; if($arrCate[2] == '00000000'){ //根节点标示:“00000000”
for($i=(count($arrCrumb)-1); $i>=0; $i--){
$crumb .= $arrCrumb[$i][1]." > ";
}
return $crumb; //返回一个字符串
}else{
return getArrCrumb($arrCate[2],&$arrCrumb);//为什么这里不return回去呢?
}
}