- microtime: documentation ( source)
- utf8_encode: documentation ( source)
- array_walk_recursive: documentation ( source)
- range: documentation ( source)
- array_walk: documentation ( source)
<?php
function recurse(&$arr)
{
if (is_array($arr)) {
foreach($arr as $i) {
recurse($i);
}
} else {
$i = $i . "appended";
echo $i;
}
}
function utf8_encode_array(&$array)
{
if (is_array($array)) {
array_walk($array, 'utf8_encode_array');
} else {
$array = utf8_encode($array);
}
}
function utf8_encode_array_recursive(&$arr)
{
if (is_array($arr)) {
array_walk_recursive($arr, function(&$value, $key) {
$value = utf8_encode($value);
});
} else {
$arr = utf8_encode($arr);
}
}
$arr = range(1, 100);
$start1 = microtime(true);
recurse($arr);
echo "Recurse function: " . (microtime(true) - $start1) . "\n";