- microtime: documentation ( source)
- error_reporting: documentation ( source)
- in_array: documentation ( source)
- rand: documentation ( source)
<?php
error_reporting(0);
$amount = 10000;
$start = microtime(true);
$alreadyOutput = array();
$iterator = $amount;
while ($iterator --) {
$num = rand(0, $amount);
if(in_array($num, $alreadyOutput)){
continue;
}
$alreadyOutput[] = $num;
}
echo "in_array: ".(microtime(true) - $start)."ms || ";
unset($alreadyOutput);
$alreadyOutput = array();
$start2 = microtime(true);
$iterator = $amount;
while ($iterator --) {
$num = rand(0, $amount);
if($alreadyOutput[$num]){
continue;
}
$alreadyOutput[$num] = true;
}
echo "by key: ".(microtime(true) - $start2)."ms";