- var_dump: documentation ( source)
- microtime: documentation ( source)
<?php
$values = [
'key1' => 'value1',
'key2' => ['value21','value22'],
'key3' => 'value3',
'key4' => 'value4',
'key5' => 'value5'
];
$fields = ['key1', 'key2', 'key4'];
$row = [];
$time_start1 = microtime(true);
foreach ($fields as $alias => $field) {
if (!is_array($field)) {
if (isset($values[$field])) {
echo "catch11\n";
$row[$field] = $values[$field];
} else if (isset($mileage[$alias])) {
echo "catch12\n";
$row[$field] = $values[$alias];
}
} else {
if (isset($values[$field])) {
echo "catch21\n";
$row[$field] = $values[$field];
} else if (isset($values[$alias])) {
echo "catch22\n";
$row[$field] = $values[$alias];
}
}
}
$time_end1 = microtime(true);
$time1 = $time_end1 - $time_start1;
var_dump($row);
echo "Did in $time1 seconds\n";
unset($row);
$time_start2 = microtime(true);
$row= [];
foreach ($fields as $alias => $field) {
if (is_array($field)) {
if (isset($values[$field])) {
echo "catch11\n";
$row[$field] = $values[$field];
} else if (isset($values[$alias])) {
$row[$field] = $values[$alias];
}
} else {
if (isset($values[$field])) {
$row[$field] = $values[$field];
} else if (isset($values[$alias])) {
$row[$field] = $values[$alias];}
}
}
$time_end2 = microtime(true);
$time2 = $time_end2 - $time_start2;
var_dump($row);
echo "Did in $time2 seconds\n";