2012-03-27 100 views
0

我有以下脚本目前,它得到的类别ID作为数组:PHP数组输出的附加变量?

$sql_select_categories = $db->query("SELECT category_id FROM " . DB_PREFIX . "categories 
            WHERE parent_id='" . intval($src_details['parent_id']) . "' 
            ORDER BY order_id ASC, name ASC"); 

$additional_vars = set_filter_link($src_details, array('parent_id' => '', 'start' => ''), 'address'); 

while ($cat_details = $db->fetch_array($sql_select_categories)) { 
    $cat_array[$cat_details['category_id']]["name"] = $category_lang[$cat_details['category_id']]; 
} 

if(is_array($cat_array)) { 
    asort($cat_array); 

    foreach($cat_array as $key => $value) {  
     $subcat_link = basename($_SERVER['PHP_SELF']) . '?parent_id=' . $key . $additional_vars; 

     $output .= '<tr> '. 
     ' <td class="contentfont">&nbsp;&raquo; <a href="' . $subcat_link . '">' . $category_lang[$key] . '</a></td> '. 
     '</tr> '; 
    } 
} 
return $output; 

这完美的作品,但我需要从被称为count数据库中提取一个多变量。因此,MySQL查询将从

SELECT category_id FROM 

改变

SELECT category_id, count FROM 

到目前为止好,但我怎么得到它,然后在foreach显示每个计数?我需要将它们显示在$category_lang[$key]之后的HTML中,如$count

回答

1

您的$cat_details数组将包含另一个可引用的元素,它将是$cat_details['count']。然后,您可以将其添加到$cat_array,就像您在while循环中使用该名称元素一样。

$cat_array[ $cat_details['category_id'] ]['count'] = $cat_details['count']; 

有意义吗?

+0

首先谢谢你!有道理,但有些东西没有工作:(我是否将$ cat_array作为第二行添加到计数中?或者以某种方式将其添加到另一行中。对不起,我刚刚开始学习数组,它非常复杂! – user1227914 2012-03-27 23:26:52

+0

改变它是这样的? – user1227914 2012-03-28 08:49:06

+0

我得到它的工作,通过添加另一行$ cat_array下另一个。我打印整个数组在我的浏览器,我看到它的工作,但无法弄清楚如何打印它作为$ value。 – user1227914 2012-03-28 09:01:53