PHP да ООП да класслар методлар тўплами сифатида

Бaъзан класслар ўхшаш мавзудаги методларни гуруҳлаш учун ишлатилади. Бундай ҳолда оддатда фақат биттагина объект яратилади ва унинг методлари турли ҳолатларда қайта-қайта ишлатилади.

Келгила, мисолда кўрайлик. Сонли массивлар билан ишловчи класс ясаймиз:

php<?php
  class ArrHelper {
    
  }
?>

Бу класснинг ҳар бир метеди параметр сифатида массив қабул қилади ва унга белгиланган амални бажаради. Масалан, бизда куйидаги методлар бўлсин:

php<?php
  class ArrHelper {
    public function getSum($arr) {
      // элементлар йиғиндиси
    }
    
    public function getAvg($arr) {
      // ўртача арифметик
    }
  }
?>

Келгила, бу методларни амалга оширамиз:

php<?php
  class ArrHelper {
    public function getSum($arr) {
      $res = 0;
      
      foreach ($arr as $num) {
        $res += $num;
      }
      
      return $res;
    }
    
    public function getAvg($arr) {
      $len = count($arr);
      
      if ($len > 0) {
        $sum = $this->getSum($arr);
        return $sum / $len;
      } else {
        return 0;
      }
    }
  }
?>

Келгила, бу методлардан қандай фойдаланишимизни кўрамиз. Бизнинг классимизнинг объектини яратамиз:

php<?php
  $arrHelper = new ArrHelper();
?>

Бизнинг объект ёрдамида турли массивларнинг сонлар йиғиндисини топамиз:

php<?php
  $sum1 = $arrHelper->getSum([1, 2, 3]);
  var_dump($sum1);
  
  $sum2 = $arrHelper->getSum([3, 4, 5]);
  var_dump($sum2);
?>
Задание 1

Validator классини ясанг, у сатрларнинг тўғрилигини текширади.

Задание 2

Сизнинг классынгизда isEmail метедини ясанг, у сатрнинг тўғри email эканлигини текширади.

Задание 3

Сизнинг классынгизда isDomain метедини ясанг, у сатрнинг тўғри домен номи эканлигини текширади.

Задание 4

Сизнинг классынгизда isNumber метедини ясанг, у сатрда фақат сонлар борлигини текширади.