Clase como conjunto de métodos en POO en PHP

A veces las clases se utilizan para agrupar métodos de temática similar. En este caso generalmente se crea solo un objeto de esta clase y sus métodos se utilizan muchas veces en diversas situaciones.

Veamos un ejemplo. Hagamos una clase que manipule arrays de números:

php<?php
  class ArrHelper {
    
  }
?>

Cada método de esta clase recibirá como parámetro un array y ejecutará sobre él la operación especificada. Supongamos, por ejemplo, que tenemos los siguientes métodos:

php<?php
  class ArrHelper {
    public function getSum($arr) {
      // suma de elementos
    }
    
    public function getAvg($arr) {
      // promedio aritmético
    }
  }
?>

Escribamos la implementación de estos métodos:

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

Veamos cómo usaremos estos métodos. Creemos un objeto de nuestra clase:

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

Encontremos usando nuestro objeto la suma de números de varios arrays:

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

Haz una clase Validator, que realizará la verificación de cadenas para comprobar su corrección.

Задание 2

Haz en tu clase el método isEmail, que verifique si la cadena es un email correcto.

Задание 3

Haz en tu clase el método isDomain, que verifique si la cadena es un nombre de dominio correcto.

Задание 4

Haz en tu clase el método isNumber, que verifique si la cadena contiene solo números.