- uniqid: documentation ( source)
- is_numeric: documentation ( source)
<?php
$numeric_fails = 0; $non_numeric_fails = 0; $iterations = 1000;
for ($i = 0; $i < $iterations; $i++) {
$my_key = uniqid("\x00");
$var = array();
$var[$my_key] = TRUE;
foreach ($var as $key => $val) {
if ($key === $my_key) {
} else {
if (is_numeric($my_key)) {
$numeric_fails++;
} else {
$non_numeric_fails++;
}
}
}
}
print "Had failures with non-numeric keys: ".($non_numeric_fails ? 'Yes' : 'No')."\n";
print "Had failures with numeric keys: ".($numeric_fails ? 'Yes' : 'No')."\n";