php - How to efficiently merge and possibly convolute two arrays? -


suppose, have 3 arrays:

$a = [ 1, 2, 3 ];       // victim #1 $b = [ 4, 5, 6, 7, 8];  // victim #2 $result = [];           // result 

i need merge $a , $b in such order, each element of $a array should followed element of array $b. elements of $b array, however, might follow each other.

for example:

1 4 2 5 6 3 7 8 

i have tried this:

while($a || $b)     {         $bool = rand(1, 100) >= 50;          if($a)             {                 $result[] = array_shift($a);             }          if($b)             {                 $result[] = array_shift($b);             }          if($bool && $b)             {                 $result[] = array_shift($b);             }     } 

which gives desired output:

array (     [0] => 1     [1] => 4     [2] => 5     [3] => 2     [4] => 6     [5] => 7     [6] => 3     [7] => 8 ) 

however, think might inefficient because of array_shift()s , if()s appears times there.

question: is there more efficient way that?

p.s.: thanks, know how use array_merge(). not rtm issue.

foreach ($a $value) {     $result[] = $value;     {         $bool = rand(0,1) == 1;         $result[] = array_shift($b);     } while ($bool); } // insert remaining of value $b in $result foreach ($b $value)     $result[] = $value; 

Comments

Popular posts from this blog

java.util.scanner - How to read and add only numbers to array from a text file -

rewrite - Trouble with Wordpress multiple custom querystrings -

php - Accessing static methods using newly created $obj or using class Name -