function getTheSecondlargest(array $arr) {
if(empty($arr)) {
return -1;
}
$max = -1;
$secondMax = -1;
foreach($arr as $n) {
if ($n > $max) {
$secondMax = $max;
$max = $n;
}
if ($n > $secondMax && $n < $max) {
$secondMax = $n;
}
}
return $secondMax;
}
echo getTheSecondlargest(array(34, 3, 8, 2, 9, 4, 6)) . "\n";
echo getTheSecondlargest(array(1, 1, 2, 1, 1)) . "\n";
echo getTheSecondlargest(array(5, 5, 5, 5, 5, 5, 5)) . "\n";
/*
run:
9
1
-1
*/