+ -
当前位置:首页 → 问答吧 → 一个递归函数原来是用echo输出,想改成return 返回值

一个递归函数原来是用echo输出,想改成return 返回值

时间:2010-10-07

来源:互联网

帮我看一下 这个函数,现在是用 echo  输出
我想改成用return 返回值的

复制代码
  1.  /**
  2. * 循环显示 栏目分类下拉框 <option></option> *
  3. * @param int $pid
  4. * @param int $id
  5. * @param int $level
  6. */
  7. function getCategorySelect($select_id=0,$id = 0,$level = 0){
  8.   global $db;
  9.   $category_arr = $db->findAll ( "select * from phpaadb_category where pid = " . $id . " order by seq" );
  10.   for($lev = 0; $lev < $level * 2 - 1; $lev ++) {
  11.     $level_nbsp .= " ";
  12.   }
  13.   if ($level++) $level_nbsp .= "┝";
  14.   foreach ( $category_arr as $category ) {
  15.   $id = $category ['id'];
  16.   $name = $category ['name'];
  17.   $selected = $select_id==$id?'selected':'';
  18.   echo "<option value=\"".$id."\" ".$selected.">".$level_nbsp . " " . $name."</option>\n";
  19.   getCategorySelect ($select_id, $id, $level );
  20.   }
  21. }

作者: tangjianft   发布时间: 2010-10-07

把输出值放进一个数组,返回数组。 调用时用implode 把数组还原成字符串即可

作者: dan_ney   发布时间: 2010-10-07