public function _getMenu($id=0,$t=0){ $category = M("category"); $data = $category->where("pid=$id")->order("sort asc")->select(); if($data){ $t++; $data2['leavel'] = $t; $category->where("pid=$id")->save($data2); //层级 foreach($data as $key=>$value){ $sort = $value['sort']; $id = $value['id']; $this->str .= '<tr><td><input name = "ids['.$id.']" type = "text" value = "'.$sort.'"></td>'; $this->str .= "<td>". $value['id']."</td>"; if($t>1){ if() $this->str .= "<td>|-----".$value['name']."</td>"; }else{ $this->str .= "<td>".$value['name']."</td>"; } $this->str .= "<td>".$value['group']."</td>"; $id = $value['id']; $this->str .= '<td><a href = http://localhost/tptest/index.php/Article/deletelanmu?id='.$id.'>删除</a></td></tr>'; $this->_getMenu($value['id'],$t); } } }
一つ聞きたいのですが、最後の自己分類では |-- の代わりに |__ を使用してください
次に、すべての列の数が適切かどうかを判断する必要があります現在の親カテゴリの下は、この列の位置 (項目数) と等しいです。等しい場合、それは要件を満たす最後の項目です
分類配列が $data の場合、
end($data);
$ek = key($data); // 次に、$data に分類されたキー値
がループ
if($key == $ek) $this->str .= "