2012-01-18 2 views
1

Я цикл через массив, который сам содержит массив, чтобы найти индексы значений 5 & 6.РНР удерживание Индекса array_push

При нахождении этих индексов, я толкать совпадающий массив, используя array_push, в другом массив. Мое приложение зависит от поддержки индексов массива, но array_push сбрасывает ключи на 0, 1, 2 и т. Д., А не на соответствие 5, 6, 7 и т. Д.

Это похоже на простую проблему, но я мог бы использовать некоторую помощь .. ..

+3

Можете ли вы показать фрагмент кода? –

+0

Вместо использования 'array_push ($ array, $ new)', вы можете сделать '$ array [] = $ new' или даже' $ array [$ key] = $ new' (в зависимости от '$ key' вы хотите)? – cmbuckley

ответ

0

Вместо того, чтобы вызывать array_push вы можете добавить элемент таким образом:

$arr[5] = array("foo", "bar"); 
$arr[6] = array("red", "blue"); 
$arr[7] = array("123", "567"); 
+0

простой, но эффективный, спасибо! – sisko

0

Будет ли это делать или я что-то пропустил?

$newArray = array(); 

foreach($myArrays as $myArray) 
    if(($result = array_search(5, $myArray)) || ($result = array_search(6, $myArray)) 
    $newArray[$result] = $myArray[$result]; 
Смежные вопросы