今天在做目录的时候 发现找一级目录是个问题 因为我们不知道当前目录有多少层 那么要找一级目录 则必然要循环 这里 我提供一个递归算法 同时附上PHPdoc
/**
* find the 1st level category by using the recursion
* @param Mage_Catalog_Model_Category $tmpCategory
* @return Mage_Catalog_Model_Category
*/
function findFirstLevelCategory($tmpCategory){
if(!strcmp($tmpCategory->getParentCategory()->getName(), 'Root Catalog'))
return $tmpCategory;
else
return findFirstLevelCategory ($tmpCategory->getParentCategory());
}
需要注意的是返回值类型 在获取子目录的时候就不要使用getCurrentChildCategories()方法了 要用getChildrenCategories()方法才行
PS:时间复杂度貌似是O(n^2)

