- array_sum: documentation ( source)
<?php
function perfect($n) {
if ($n < 1) {
echo "Number has to be Positive.";
return false;
}
for($i = 1; $i <= $n; $i++) {
if ($n % $i == 0) {
$factors[] = $i;
}
}
return ($n == array_sum($factors) / 2) ? true : false;
}
perfect(42);
?>