дополнительная переменная в выходной массив php? - PullRequest
0 голосов
/ 28 марта 2012

У меня есть следующий скрипт, который получает идентификаторы категорий в виде массивов:

$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? Мне нужно, чтобы они отображались в HTML после $category_lang[$key] как что-то вроде $count.

1 Ответ

1 голос
/ 28 марта 2012

В вашем массиве $cat_details будет другой элемент, на который вы можете ссылаться, который будет $cat_details['count'].Затем вы можете добавить это к своему $cat_array, как вы делаете с этим элементом имени в цикле while.

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

Имеет смысл?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...