2014-12-01 2 views
1

Я пытаюсь вывести список строк в ассоциативный массив PHP. В идеале, моя структура данных выглядит следующим образом:PHP array_push в ассоциативном массиве

$foo = array("key" -> array()) 

Так что я пытаюсь сделать, это цикл, и сделать что-то вроде следующего:

while loop 
array_push($foo["key"], some_val); 
done loop 

Это не строит массив, хотя, как Я ожидал этого. Что здесь отсутствует?

+3

Почему не просто '$ foo ['key'] []'? – Nanne

+0

Что вы ожидаете от результата вышеуказанного кода? Никто не может рассказать вам, чего не хватает, если вы не скажете нам, чего вы ожидаете. –

ответ

0

Это должно работать для вас:

function array_push_assoc($array, $key, $value){ 
    $array[$key] = $value; 
    return $array; 
} 

$array = array_push_assoc($array, 'key', 'value'); 

Вы также можете просто сделать это:

$array["key"] = $value; 
-1

Просто сделать это:

While(COND){ 
$foo["key"] = $some_val; 
} 
var_dump($foo); 
0

я бы не использовать array_push здесь, если вы все равно в цикле.

foreach($newStuff as $key=>$value){ $foo[$key] = $value; } 

Если вы находитесь за пределами цикла и хотите вставить несколько элементов одновременно, используйте array_push.

Смежные вопросы