PHP функцияларида флаглар

Функцияларда флаглардан return инструкцияси орқали бевосита бўлмаган холда фойдаланиш мумкин. Келгила, бу қандай амалга оширилишини кўрамиз. Фарз қилайлик, бизда массивнинг барча элементлари mусбат сонлар эканини текширувчи куйидаги функция мавжуд:

php<?php
  function isPositive($arr) {
    $flag = true;
    
    foreach ($arr as $elem) {
      if ($elem < 0) {
        $flag = false;
      }
    }
    
    return $flag;
  }
?>

Келгила, функция кодини флаглардан бевосита бўлмаган холда фойдаланиш орқали қайта ёзайлик:

php<?php
  function isPositive($arr) {
    foreach ($arr as $elem) {
      if ($elem < 0) {
        return false;
      }
    }
    
    return true;
  }
?>

Бу қандай ишлайди: агар массивда керакли элемент топилса - биз return орқали функциядан (ва шунингдек циклдан ҳам) чиқиб кетамиз. Аммо агар массивда керакли элемент топилмаса - функциядан чиқиш бўлмайди ва ишлаш return true буюруғига етгач тугайди. Ва шундай қилиб, функция массивда барча элементлар mусбат эканининг белгиси сифатида true қайтаради.

Задание 1

Сонлар массивини параметр сифатида қабул қиладиган ва ушбу массивдаги барча элементлар жуфт сонлар эканини текширадиган функция ясанг.

Задание 2

Сонни параметр сифатида қабул қиладиган ва ушбу соннинг барча рақамлари тоқ сонлар эканини текширадиган функция ясанг.

Задание 3

Массивни параметр сифатида қабул қиладиган ва ушбу массивда кетма-кет келадиган иккита бир хил элемент бор-йўқлигини текширадиган функция ясанг.