php递归函数的反向结果
我已经编写了一个php函数来显示类别,所有的作品都可以找到,但echo显示的结果是颠倒过来的(椅子/家具/产品),但我需要将其颠倒过来,使其看起来像这样(产品/家具/椅子)php递归函数的反向结果,php,Php,我已经编写了一个php函数来显示类别,所有的作品都可以找到,但echo显示的结果是颠倒过来的(椅子/家具/产品),但我需要将其颠倒过来,使其看起来像这样(产品/家具/椅子) 功能站点地图($id){ $query\u rsCategoryId=“从类别中选择* 其中category_id=“$id.”; $rsCategoryId=mysql\u query($query\u rsCategoryId,$connection); $row\u rsCategoryId=mysql\u fetch
功能站点地图($id){
$query\u rsCategoryId=“从类别中选择*
其中category_id=“$id.”;
$rsCategoryId=mysql\u query($query\u rsCategoryId,$connection);
$row\u rsCategoryId=mysql\u fetch\u assoc($rsCategoryId);
$parent=$row\rsCategoryId['category\u parent'];
回声'/
';
如果($parent==0){
出口
}否则{
返回站点地图($parent);
}
}
尝试在查询中使用order by desc
SELECT * FROM categories
WHERE category_id = '".$id."' ORDER BY category_name_en DESC
只要修改一下你的代码
function sitemap($id) {
$query_rsCategoryId = "SELECT * FROM categories
WHERE category_id = '".$id."'";
$rsCategoryId = mysql_query($query_rsCategoryId, $connection);
$row_rsCategoryId = mysql_fetch_assoc($rsCategoryId);
$parent = $row_rsCategoryId['category_parent'];
if ($parent != 0) {
sitemap($parent);
echo '<li><span class="divider">/</span>';
} else {
echo '<li>';
}
echo '<a href="products.php?category_id='.$row_rsCategoryId['category_id'].'">
'.$row_rsCategoryId['category_name_en'].' </a>
</li>';
}
功能站点地图($id){
$query\u rsCategoryId=“从类别中选择*
其中category_id=“$id.”;
$rsCategoryId=mysql\u query($query\u rsCategoryId,$connection);
$row\u rsCategoryId=mysql\u fetch\u assoc($rsCategoryId);
$parent=$row\rsCategoryId['category\u parent'];
如果($parent!=0){
网站地图(母版);
回音“/”;
}否则{
回音“ ”;
}
回声'
';
}
不要回显结果,而是构建一个递归结果数组,然后可以颠倒该数组的顺序,然后在显示结果的数组中循环。在递归函数调用后放置回显。(还要将返回值保存到一个变量中,并在最后返回它。但您似乎没有对其执行任何操作。还要反转条件:如果$parent!=0,那么sitemap($parent))不起作用,他将在单独的查询中获取每个类别。
function sitemap($id) {
$query_rsCategoryId = "SELECT * FROM categories
WHERE category_id = '".$id."'";
$rsCategoryId = mysql_query($query_rsCategoryId, $connection);
$row_rsCategoryId = mysql_fetch_assoc($rsCategoryId);
$parent = $row_rsCategoryId['category_parent'];
if ($parent != 0) {
sitemap($parent);
echo '<li><span class="divider">/</span>';
} else {
echo '<li>';
}
echo '<a href="products.php?category_id='.$row_rsCategoryId['category_id'].'">
'.$row_rsCategoryId['category_name_en'].' </a>
</li>';
}