добавление элемента в многомерный массив в цикле foreach (PHP) - PullRequest
2 голосов
/ 24 июня 2010

Я пытаюсь проверить, выбрана ли уже определенная категория, просматривая массив категорий, и я хочу добавить еще один элемент в массив, который просто указывает, является ли категория выбранной

мой массив категорий выглядит следующим образом

0=>array(category_id=>12,category_name=>"blogger")  
1=>array(category_id=>13,category_name=>"dancer")

и т.д ...
теперь код, который я пытаюсь сделать, выглядит так:

foreach ($userCategories as $key=>$category) {
    if($category['category_id'] == $mediaDetails['currentCategory']) {
        $category['current'] = 1;
    } else {
        $category['current'] = 0;
    }
}

при выполнении

die(var_dump($userCategories));

Я ожидаю получить массив, похожий на

0=>array(category_id=>12,category_name=>"blogger",current=>0)  
1=>array(category_id=>13,category_name=>"dancer",current=>1)

но вместо этого я получаю тот же массив, который был у меня до цикла foreach

есть идеи?

Спасибо

1 Ответ

11 голосов
/ 24 июня 2010

Похоже, $category не передается по ссылке.

Вместо этого попробуйте $userCategories[$key]['current']=1 и посмотрите, как это работает.

...