类方法返回值,奇怪的现象
本帖最后由 xuzuning 于 2013-03-08 14:59:52 编辑 各位大侠,请看如下代码:
我要实现的功能是,利用一个多维数组输出一个树状结构,下面的参数是多维数组。
//递归树状输出格式一
public function accounttreetype1($arrdata){
$this->strlable = $this->strlable.'';
foreach($arrdata as $val){
if(is_array($val['child'])){
$this->strlable = $this->strlable.''.$val['acc_code'].$val['acc_name'];
$this->accounttreetype1($val['child']);
}else{
$this->strlable = $this->strlable.''.$val['acc_code'].$val['acc_name'].'';
if($val[id]=='最后一个id'){
return $this->strlable; //在这里没有返回值,不过用echo $this->strlable;是可以打印出来,但是返回值为空。
}
}
}
$this->strlable = $this->strlable.'';
}
------解决方案--------------------
方法的最后加上
return $this->strlable;
------解决方案--------------------
public function accounttreetype1($arrdata){
$strlable .= '';
foreach($arrdata as $val){
if(is_array($val['child'])){
$strlable .= ''.$val['acc_code'].$val['acc_name'].'';
$strlable .= $this->accounttreetype1($val['child']);
}else{
$strlable .= ''.$val['acc_code'].$val['acc_name'].'';
}
}
return $strlable.'';
}