<?php
$input = [
'set1' => [
'key1' => 'value1',
'key2' => 'value2'
],
'set2' => [
'key1' => 'value111',
'key2' => 'value222'
]
];
$output = [
'out2' => [
'key1' => 'value11',
'key2' => 'value22',
'key3' => 'value33',
'key4' => 'value44',
'key5' => 'value55',
'key6' => 'value66',
],
'out3' => [
'key1' => 'value111',
'key2' => 'value222',
'key3' => 'value333',
'key4' => 'value444',
'key5' => 'value555',
'key6' => 'value666',
]
];
foreach($output as $key => $value) {
foreach($input as $inputs) {
if (array_intersect($value, $inputs) == $inputs) {
$result[$key] = $value;
} else {
$missingSets[key($input)] = $inputs;
}
}
}
var_dump($result);
var_dump($missingSets);
- Output for 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
- array(1) {
["out3"]=>
array(6) {
["key1"]=>
string(8) "value111"
["key2"]=>
string(8) "value222"
["key3"]=>
string(8) "value333"
["key4"]=>
string(8) "value444"
["key5"]=>
string(8) "value555"
["key6"]=>
string(8) "value666"
}
}
array(1) {
["set1"]=>
array(2) {
["key1"]=>
string(6) "value1"
["key2"]=>
string(6) "value2"
}
}
- Output for 5.6.0 - 5.6.40
- array(1) {
["out3"]=>
array(6) {
["key1"]=>
string(8) "value111"
["key2"]=>
string(8) "value222"
["key3"]=>
string(8) "value333"
["key4"]=>
string(8) "value444"
["key5"]=>
string(8) "value555"
["key6"]=>
string(8) "value666"
}
}
array(1) {
["set2"]=>
array(2) {
["key1"]=>
string(6) "value1"
["key2"]=>
string(6) "value2"
}
}
preferences:
212.87 ms | 402 KiB | 283 Q