public function big_endian_array_walk(array $array, $callback) {
end($array);
for($i=sizeof($array);$i>0;$i--) {
$key = key($array);
$value = array_pop($array);
if(preg_match('/^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$/', $value)) {
call_user_func_array($callback, [$value, $key]);
}
}
}
I just wanted to walk from the end to the beginning.