Php 按顺序列出类别ID

Php 按顺序列出类别ID,php,mysql,arrays,magento,Php,Mysql,Arrays,Magento,我有以下代码用于获取类别ID列表: $categoryModel = Mage::getModel('catalog/category')->load($id); $allCategoryIds = $category->getResource()->getChildren($category, true); 这给了我一个很好的小数组,其中包含一个类别ID列表,如下所示: Array( [0] => 10, [1] => 11, [2] => 3, [3]

我有以下代码用于获取类别ID列表:

$categoryModel = Mage::getModel('catalog/category')->load($id);
$allCategoryIds = $category->getResource()->getChildren($category, true);
这给了我一个很好的小数组,其中包含一个类别ID列表,如下所示:

Array( [0] => 10, [1] => 11, [2] => 3, [3] => 4, [4] => 5, [5] => 6, [6] => 7, [7] => 14, [8] => 17, [9] => 18 );
我要做的是按照这些类别在管理面板中出现的位置对该数组进行排序

首先,我研究了以下解决方案:

但是,这两种解决方案最终都使用整个集合,然后对该集合进行排序。为了按照我的意愿对数组进行排序,我必须遍历整个集合,并使用它对数组进行重新排序。这对我来说似乎是错误的/浪费的(如果我在这里错了,请纠正我)

我想知道是否需要对数据库进行SQL调用,以获得一个简单的类别ID数组及其在管理面板中的位置?这会比使用Magento的系统更快、更高效吗?如果可能的话,我更愿意使用Magento的系统,但如果它涉及到迭代几个大对象(这个页面已经做了很多工作)的话,我就不这么想了

所以我的问题是:


获取类别ID数组(如上所述)的最简单、最有效的方法是什么,但它们在管理面板中的显示顺序是什么?

你真的只需要ID和位置吗?我只需要一个ID数组,按位置排序。一个ID和位置的数组将使我能够实现这一点,所以是的,那就可以了。你真的只需要ID和位置吗?我只需要一个ID数组,按位置排序。一系列的ID和位置将使我能够实现这一点,所以是的,那就可以了。