gpt4 book ai didi

php - 递归获取类别树(Yii)

转载 作者:行者123 更新时间:2023-12-03 02:42:52 25 4
gpt4 key购买 nike

我有一个具有以下结构的表:

类别

  • ID
  • 姓名
  • parent_id

我想获得具有单一功能的类别树。我在我的模型中写了类似的东西,但它不起作用。

public function getChildren($parent) { 
$criteria = new CDbCriteria;
$criteria->condition='parent_id=:id';
$criteria->params=array(':id'=>$parent);
$model = Term::model()->findAll($criteria);
while ($model) {
echo $model->id . "<br />";
$this->getChildren;
}
}

有人可以帮我解决这个问题吗?谢谢。

最佳答案

我终于解决了这个问题。如果有人感兴趣,这里是代码:

public function getChildren($parent, $level=0) { 
$criteria = new CDbCriteria;
$criteria->condition='parent_id=:id';
$criteria->params=array(':id'=>$parent);
$model = $this->findAll($criteria);
foreach ($model as $key) {
echo str_repeat(' — ', $level) . $key->name . "<br />";
$this->getChildren($key->id, $level+1);
}
}
public function getChildrenString($parent) {
$criteria = new CDbCriteria;
$criteria->condition='parent_id=:id';
$criteria->params=array(':id'=>$parent);
$model = $this->findAll($criteria);
foreach ($model as $key) {
$storage .= $key->id . ",";
$storage .= $this->getChildrenString($key->id);
}
return $storage;
}

关于php - 递归获取类别树(Yii),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11483549/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com