我有一个MySQL查询,它将整个MySQL数据库的结果转换为名为$parents
然后我有一个foreach函数循环显示该数组的结果
功能:
function subtree($id, $parents) {
if (isset($parents[$id]))
foreach ($parents[$id] as $child)
{
subtree($child, $parents);
}
}
我需要对这个函数的数组结果进行排序,
或者将结果导入new_sub_array
然后对其进行排序并显示结果
任何修改函数的方法都可以做我需要的吗?
答案 0 :(得分:0)
改变你的状况
if (is_array($parents[$id]))
如果Value是数组,则查找下一个子树
else
否则写入值。
如果要对数组进行排序 - 只需在子树()的开头使用this function之一
你的功能看起来像这样,我不确定我是否理解你,但它应该没问题。
function subtree($parents)
{
if (is_array($parents))
{
sort($parents);
foreach ($parents as $key => $value)
{
subtree($value);
}
}
else
{
echo $parents;
}
}
$ id参数是不必要的。
答案 1 :(得分:-1)
从数据库中调用它们时,您可以对值进行排序。因此,如果您按日期的降序对它们进行排序,例如:
SELECT * FROM values WHERE :id=$id ORDER BY date DESC
基本上,ORDER BY
是你的朋友。 This helped me a lot.