Kelas sebagai Set Kaedah dalam OOP di PHP

Kadangkala kelas digunakan untuk mengumpulkan kaedah-kaedah yang berkaitan topik yang sama. Dalam kes ini biasanya hanya satu objek kelas ini dicipta dan kaedah-kaedahnya digunakan berkali-kali dalam pelbagai situasi.

Mari kita lihat contoh. Mari buat kelas yang akan memanipulasi array nombor:

php<?php
  class ArrHelper {
    
  }
?>

Setiap kaedah kelas ini akan menerima array sebagai parameter dan melaksanakan operasi tertentu ke atasnya. Katakan, sebagai contoh, kita mempunyai kaedah-kaedah berikut:

php<?php
  class ArrHelper {
    public function getSum($arr) {
      // jumlah elemen
    }
    
    public function getAvg($arr) {
      // purata aritmetik
    }
  }
?>

Mari tulis pelaksanaan kaedah-kaedah ini:

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

Mari lihat bagaimana kita akan menggunakan kaedah-kaedah ini. Mari buat objek kelas kami:

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

Mari cari jumlah nombor bagi pelbagai array menggunakan objek kami:

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

Buat kelas Validator, yang akan melakukan pengesahan rentetan untuk ketepatan.

Задание 2

Buat dalam kelas anda kaedah isEmail, yang memeriksa sama ada rentetan ialah email yang betul.

Задание 3

Buat dalam kelas anda kaedah isDomain, yang memeriksa sama ada rentetan ialah nama domain yang betul.

Задание 4

Buat dalam kelas anda kaedah isNumber, yang memeriksa sama ada rentetan hanya mengandungi nombor.