1

I am looping through an array which itself contains array to find indexes of values 5 & 6.

Upon finding these indexes, I push the matched array, using array_push, into a another array. My application depends on maintaining the array indexes but array_push resets the keys to 0, 1, 2 etc rather than the matched 5, 6, 7 etc.

halfer
  • 19,824
  • 17
  • 99
  • 186
sisko
  • 9,604
  • 20
  • 67
  • 139

2 Answers2

0

Would that do or did I miss something?

$newArray = array();

foreach( $myArrays as $myArray ) 
  if( ($result = array_search(5, $myArray)) || ($result = array_search(6, $myArray))
    $newArray[$result] = $myArray[$result];
mobius
  • 5,104
  • 2
  • 28
  • 41
0

Rather than calling array_push you can add element this way:

$arr[5] = array("foo", "bar");
$arr[6] = array("red", "blue");
$arr[7] = array("123", "567");
anubhava
  • 761,203
  • 64
  • 569
  • 643