PHP හි ලූපය සහ return
අපට 1 සිට 5 දක්වා සංඛ්යාවල එකතුව ආපසු ලබා දෙන ශ්රිතයක් තිබිය යුතුය:
<?php
function func() {
$sum = 0;
for ($i = 1; $i <= 5; $i++) {
$sum += $i;
}
return $sum;
}
$res = func();
echo $res; // 15 ප්රදර්ශනය කරයි
?>
දැන් අපි return ලූපය තුළට තබමු,
මේ විදියට:
<?php
function func() {
$sum = 0;
for ($i = 1; $i <= 5; $i++) {
$sum += $i;
return $sum;
}
}
$res = func();
echo $res;
?>
මෙම අවස්ථාවේදී, ලූපය එක් පුඩුවක් පමණක් කරකවනු ඇති අතර ශ්රිතයෙන් ස්වයංක්රීයව පිටවීමක් සිදුවේ
(සහ එමඟින් ලූපයෙන්ද). එක් පුඩුවක් සඳහා
ලූපයේ $sum විචල්යයේ අවශ්ය මුළු එකතුව නොව
අංක 1 පමණක් අඩංගු වනු ඇත.
පහත කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලයක් ලෙස තිරයේ ප්රදර්ශනය වන්නේ කුමක්ද:
<?php
function func($num) {
$sum = 0;
for ($i = 1; $i <= $num; $i++) {
$sum += $i;
return $sum;
}
}
echo func(5);
?>
ඇයිද යන්න පැහැදිලි කරන්න.
මෙම කේතයේ කර්තෘ අදහස් කළේ කුමක්ද? කර්තෘගේ දෝෂය සකසන්න.