PHP функцияларида флаглар
Функцияларда флаглардан
return инструкцияси орқали
бевосита бўлмаган холда фойдаланиш мумкин.
Келгила, бу қандай амалга оширилишини кўрамиз.
Фарз қилайлик, бизда массивнинг барча элементлари
mусбат сонлар эканини текширувчи куйидаги функция мавжуд:
<?php
function isPositive($arr) {
$flag = true;
foreach ($arr as $elem) {
if ($elem < 0) {
$flag = false;
}
}
return $flag;
}
?>
Келгила, функция кодини флаглардан бевосита бўлмаган холда фойдаланиш орқали қайта ёзайлик:
<?php
function isPositive($arr) {
foreach ($arr as $elem) {
if ($elem < 0) {
return false;
}
}
return true;
}
?>
Бу қандай ишлайди: агар массивда керакли элемент топилса -
биз return орқали функциядан (ва шунингдек циклдан ҳам)
чиқиб кетамиз. Аммо агар массивда керакли элемент топилмаса -
функциядан чиқиш бўлмайди ва ишлаш return true буюруғига
етгач тугайди. Ва шундай қилиб, функция массивда барча элементлар
mусбат эканининг белгиси сифатида true қайтаради.
Сонлар массивини параметр сифатида қабул қиладиган ва ушбу массивдаги барча элементлар жуфт сонлар эканини текширадиган функция ясанг.
Сонни параметр сифатида қабул қиладиган ва ушбу соннинг барча рақамлари тоқ сонлар эканини текширадиган функция ясанг.
Массивни параметр сифатида қабул қиладиган ва ушбу массивда кетма-кет келадиган иккита бир хил элемент бор-йўқлигини текширадиган функция ясанг.