【发布时间】:2018-08-26 15:48:30
【问题描述】:
所以,我试图打印我的课程:
class category {
public $name;
public $id;
public $subCats = array();
public function __construct($name = "", $id = "") {
$this->name = $name;
$this->id = $id;
}
public function add_sub_cat($subCat) {
array_push($this->subCats, $subCat);
}
}
递归和迭代两种方式,第一种我没有任何问题:
function recursive_print($category, $path) {
?>
<li><div id="category-name" ><p><? echo $category->name ?></p>
</div></li>
<?php foreach($category->subCats as $subCat) { ?>
<ul>
<?php recursive_print($subCat, $path.=$subCat->id) ?>
</ul>
<?php }
}
但现在我被困在了这项任务的第二部分。 我必须修改我的课程吗? 甚至可以在不递归的情况下打印吗? 我已阅读 this 但它没有清除任何内容。 也许有人有更好的教程或任何建议?
【问题讨论】:
-
对我来说像家庭作业
-
我不是要求完整的解决方案,我要求的是方向、来源或只是回答这两个问题
-
制作一个堆栈你必须处理的所有项目。添加您的“主”项目。如果您当前扫描的项目有子项,请将它们推入堆栈。重复直到堆栈为空。