Penggunaan return dalam Perulangan di PHP
Fakta bahwa return terletak di dalam perulangan,
tidak selalu berarti sebuah kesalahan.
Pada contoh berikutnya dibuat sebuah fungsi yang
menentukan berapa banyak elemen pertama array
yang perlu dijumlahkan agar hasilnya menjadi lebih besar atau
sama dengan 10:
<?php
function func($arr) {
$length = count($arr);
$sum = 0;
for ($i = 0; $i < $length; $i++) {
$sum += $arr[$i];
// Jika hasil penjumlahan lebih besar atau sama dengan 10:
if ($sum >= 10) {
return $i + 1; // keluar dari perulangan dan fungsi
}
}
}
$res = func([1, 2, 3, 4, 5]);
echo $res;
?>
Dan pada contoh berikutnya dibuat sebuah fungsi yang
menghitung, berapa banyak bilangan bulat, mulai dari
1, yang perlu dijumlahkan agar hasilnya
lebih besar dari 100:
<?php
function func() {
$sum = 0;
$i = 1;
while (true) { // perulangan tak terbatas
$sum += $i;
if ($sum >= 100) {
return $i; // perulangan berlanjut sampai keluar di sini
}
$i++;
}
}
echo func();
?>
Tulislah sebuah fungsi yang parameternya akan
menerima sebuah angka dan membaginya dengan 2
beberapa kali, sampai hasilnya menjadi kurang dari
10. Fungsi tersebut harus mengembalikan jumlah
iterasi yang dibutuhkan untuk mencapai hasil tersebut.