<?php
$csv_array = array (
0 =>
array (
0 => 'delivery_postcode',
1 => 'tracking'
),
1 =>
array (
0 => 'A0N2H0',
1 => 3197653232325
),
2 =>
array (
0 => 'A3N 3A6',
1 => 31976532323252
)
);
$orders = array(
array (
'orders_id' => 32061,
'delivery_postcode' => 'V0R 2M0'
),
array (
'orders_id' => 32011,
'delivery_postcode' => 'L8B1H5'
),
array (
'orders_id' => 31846,
'delivery_postcode' => 'K0E1K0'
),
array (
'orders_id' => 31822,
'delivery_postcode' => 'A0N 2H0'
),
array (
'orders_id' => 31503,
'delivery_postcode' => 'V0J 1Z2'
)
);
$csv_keys = array_shift($csv_array);
$csv_array = array_map(function ($a) use ($csv_keys) {
return array_combine($csv_keys, array(str_replace(' ', '', $a[0]), $a[1]));
}, $csv_array);
$tracked = array();
foreach ($orders as $order) {
if (($key = array_search(str_replace(' ', '', $order['delivery_postcode']), array_column($csv_array, 'delivery_postcode'))) !== false) {
$tracked[] = array_merge($order, $csv_array[$key]);
}
}
print_r($tracked);
preferences:
113.95 ms | 412 KiB | 5 Q