Ориентация на многомерную ассоциативную часть массива по индексу - PullRequest
2 голосов
/ 24 июня 2011

Как я могу нацелить многомерный ассоциативный массив по индексу? Мне нужно уметь что-то делать в соответствии с этим ...

$x=2;

$assoc_array = array(
"red" => array(1,2,3,4,5),
"green" => array(1,2,3,4,5),
"blue" => array(1,2,3,4,5)
);

array_push($assoc_array[$x],6);

Ответы [ 3 ]

1 голос
/ 24 июня 2011

Мое доказательство того, что это работает: http://codepad.org/G81fsTzl

Красный - 0, зеленый - 1, синий - 2 или часть $ x = 2.

Если мой ответ правильный,Обязательно установите флажок слева от этого поста, чтобы я мог набирать очки.Очки - это то, что побуждает меня продолжать отвечать на вопросы.Спасибо за ваше время.

$x=2;

$assoc_array = array(
    "red" => array(1,2,3,4,5),
    "green" => array(1,2,3,4,5),
    "blue" => array(1,2,3,4,5)
);

$c = 0;
foreach ($assoc_array as $key => $value)
{
    if ($c == $x)
    {
        array_push($value, 6);
        $assoc_array[$key] = $value;
    }

    $c++;
}
1 голос
/ 24 июня 2011

Вы на самом деле можете сделать это. В качестве альтернативы вы можете использовать $assoc_array[$x][] = 6

РЕДАКТИРОВАТЬ : выше ответ на то, что вы спросили. Код, приведенный ниже, предназначен для того, что, по-моему, вам нужно, но четко не указано:

$x = 2;
$keys = array_keys($assoc_array);
var_dump($assoc_array[$keys[$x]]);

Пример рабочей кодовой панели: http://codepad.org/QXfHmKH8

0 голосов
/ 24 июня 2011

Вы должны ссылаться на них с помощью ключа, который в данном случае соответствует заданным вами значениям цвета.Чтобы добавить новый элемент к первому элементу (красный), вы должны использовать:

$assoc_array["red"][] = 6;

Using $ assoc_array [$ x] [] = 6;создаст новый ключ массива с идентификатором $ x, если только $ x не является красным, зеленым или синим.

Вышеприведенный метод работает, но очень сложен, если вы просто хотите сослаться на существующее значение массива.*

Часть идеи о присвоении строкового значения в качестве ключа массива состоит в том, чтобы позволить легко ссылаться на значения массива через связанную строку, а не бессмысленное число.

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