<?php
$first = [
3 => [['id' => 1, 'number' => 0, 'time' => 40,]],
4 => [['id' => 2, 'number' => 0, 'time' => 40,]],
5 => [['id' => 3, 'number' => 0, 'time' => 40,]],
6 => [['id' => 1, 'number' => 0, 'time' => 41,]],
7 => [['id' => 2, 'number' => 0, 'time' => 41,]],
8 => [['id' => 3, 'number' => 0, 'time' => 41,]],
];
$second = [
3 => ['id' => '1', 'number' => '3785', 'time' => '40'],
4 => ['id' => '2', 'number' => '1574', 'time' => '40'],
5 => ['id' => '1', 'number' => '2954', 'time' => '41'],
6 => ['id' => '2', 'number' => '2463', 'time' => '41'],
];
$map = [];
foreach ($first as $k => [['id' => $id, 'time' => $time]]) {
$map["{$id}_{$time}"] = $k;
}
foreach ($second as $row) {
$key = $map["{$row['id']}_{$row['time']}"];
$first[$key] = $row;
}
var_export($first);
preferences:
28.21 ms | 404 KiB | 5 Q