Home > Article > Backend Development > PHP multidimensional arrays are merged based on key values.
array (size=15)
0 =>
<code>array (size=2) 'time' => string '2016-04-14' (length=10) 'frequency' => string '3' (length=1)</code>
1 =>
<code>array (size=2) 'time' => string '2016-04-22' (length=10) 'frequency' => string '5' (length=1)</code>
2 =>
<code>array (size=2) 'time' => string '2016-04-23' (length=10) 'frequency' => string '1' (length=1)</code>
3 =>
<code>array (size=2) 'time' => string '2016-04-24' (length=10) 'frequency' => string '2' (length=1)</code>
4 =>
<code>array (size=2) 'time' => string '2016-04-25' (length=10) 'frequency' => string '16' (length=2) </code>
array (size=15)
0 =>
<code>array (size=2) 'time' => string '2016-04-14' (length=10) 'amount' => string '18.00' (length=5)</code>
1 =>
<code>array (size=2) 'time' => string '2016-04-22' (length=10) 'amount' => string '54.00' (length=5)</code>
2 =>
<code>array (size=2) 'time' => string '2016-04-23' (length=10) 'amount' => string '6.00' (length=4)</code>
3 =>
<code>array (size=2) 'time' => string '2016-04-24' (length=10) 'amount' => string '12.00' (length=5)</code>
4 =>
<code>array (size=2) 'time' => string '2016-04-25' (length=10) 'amount' => string '48.00' (length=5) </code>
array (size=15)
0 =>
<code>array (size=2) 'time' => string '2016-04-14' (length=10) 'number' => string '1' (length=1)</code>
1 =>
<code>array (size=2) 'time' => string '2016-04-22' (length=10) 'number' => string '5' (length=1)</code>
2 =>
<code>array (size=2) 'time' => string '2016-04-23' (length=10) 'number' => string '1' (length=1)</code>
3 =>
<code>array (size=2) 'time' => string '2016-04-24' (length=10) 'number' => string '1' (length=1)</code>
4 =>
<code>array (size=2) 'time' => string '2016-04-25' (length=10) 'number' => string '2' (length=1) </code>
There are multiple multi-dimensional arrays of the same format, and I want to merge them into the following effect based on the value of time
Please tell me how to solve it?
array (size=15)
0 =>
<code>array (size=2) 'time' => string '2016-04-14' (length=10) 'frequency' => string '3' (length=1)</code>
1 =>
<code>array (size=2) 'time' => string '2016-04-22' (length=10) 'frequency' => string '5' (length=1)</code>
2 =>
<code>array (size=2) 'time' => string '2016-04-23' (length=10) 'frequency' => string '1' (length=1)</code>
3 =>
<code>array (size=2) 'time' => string '2016-04-24' (length=10) 'frequency' => string '2' (length=1)</code>
4 =>
<code>array (size=2) 'time' => string '2016-04-25' (length=10) 'frequency' => string '16' (length=2) </code>
array (size=15)
0 =>
<code>array (size=2) 'time' => string '2016-04-14' (length=10) 'amount' => string '18.00' (length=5)</code>
1 =>
<code>array (size=2) 'time' => string '2016-04-22' (length=10) 'amount' => string '54.00' (length=5)</code>
2 =>
<code>array (size=2) 'time' => string '2016-04-23' (length=10) 'amount' => string '6.00' (length=4)</code>
3 =>
<code>array (size=2) 'time' => string '2016-04-24' (length=10) 'amount' => string '12.00' (length=5)</code>
4 =>
<code>array (size=2) 'time' => string '2016-04-25' (length=10) 'amount' => string '48.00' (length=5) </code>
array (size=15)
0 =>
<code>array (size=2) 'time' => string '2016-04-14' (length=10) 'number' => string '1' (length=1)</code>
1 =>
<code>array (size=2) 'time' => string '2016-04-22' (length=10) 'number' => string '5' (length=1)</code>
2 =>
<code>array (size=2) 'time' => string '2016-04-23' (length=10) 'number' => string '1' (length=1)</code>
3 =>
<code>array (size=2) 'time' => string '2016-04-24' (length=10) 'number' => string '1' (length=1)</code>
4 =>
<code>array (size=2) 'time' => string '2016-04-25' (length=10) 'number' => string '2' (length=1) </code>
There are multiple multi-dimensional arrays of the same format, and I want to merge them into the following effect based on the value of time
Please tell me how to solve it?
If your arrays have been sorted by time and have the same length.
<code class="php">$new_arr = []; foreach ($arr as $key=>$value) { $new_arr[$key] = [ 'time' => $arr[$key]['time'], 'frequency' => $arr[$key]['frequency'], 'other' => $arr2[$key]['other'] ]; }</code>