Trieda ako súbor metód v OOP v PHP

Niekedy sa triedy používajú na zoskupenie metód podobnej tématiky. V tomto prípade sa spravidla vytvorí iba jeden objekt tejto triedy a jeho metódy sa používajú mnohokrát v rôznych situáciách.

Pozrime sa na príklad. Vytvorme triedu, ktorá bude manipulovať s poľami čísel:

php<?php
  class ArrHelper {
    
  }
?>

Každá metóda tejto triedy ako parameter bude prijímať pole a vykonávať nad ním danú operáciu. Nech máme napríklad nasledujúce metódy:

php<?php
  class ArrHelper {
    public function getSum($arr) {
      // súčet prvkov
    }
    
    public function getAvg($arr) {
      // aritmetický priemer
    }
  }
?>

Napíšme implementáciu týchto metód:

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;
      }
    }
  }
?>

Pozrime sa, ako budeme tieto metódy používať. Vytvorme objekt našej triedy:

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

Nájdime pomocou nášho objektu súčet čísel rôznych polí:

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

Vytvorte triedu Validator, ktorá bude vykonávať kontrolu reťazcov na správnosť.

Задание 2

Vytvorte vo vašej triede metódu isEmail, kontrolujúcu reťazec na to, či je to správny email.

Задание 3

Vytvorte vo vašej triede metódu isDomain, kontrolujúcu reťazec na to, či je to správne meno domény.

Задание 4

Vytvorte vo vašej triede metódu isNumber, kontrolujúcu reťazec na to, či obsahuje iba čísla.