- array_combine: documentation ( source)
- array_sum: documentation ( source)
- ini_set: documentation ( source)
- range: documentation ( source)
- next: documentation ( source)
<?php
ini_set('memory_limit', -1);
function find_primes($finish)
{
$number = 2;
$range = range(2, $finish);
$primes = array_combine($range, $range);
while ($number * $number < $finish) {
for ($i = $number; $i <= $finish; $i += $number) {
if ($i == $number) {
continue;
}
unset($primes[$i]);
}
$number = next($primes);
}
return $primes;
}
echo array_sum(find_primes(2000000));