Класс как набор методов в ООП в PHP
Иногда классы используют для группировки методов схожей тематики. В этом случае как правило создается только один объект этого класса и его методы используются много раз в различных ситуациях.
Давайте посмотрим на примере. Сделаем класс, который будет манипулировать массивами чисел:
<?php
class ArrHelper {
}
?>
Каждый метод этого класса параметром будет принимать массив и выполнять над ним заданную операцию. Пусть, к примеру, у нас будут следующие методы:
<?php
class ArrHelper {
public function getSum($arr) {
// сумма элементов
}
public function getAvg($arr) {
// среднее арифметическое
}
}
?>
Напишем реализацию этих методов:
<?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
$arrHelper = new ArrHelper();
?>
Найдем с помощью нашего объекта сумму чисел различных массивов:
<?php
$sum1 = $arrHelper->getSum([1, 2, 3]);
var_dump($sum1);
$sum2 = $arrHelper->getSum([3, 4, 5]);
var_dump($sum2);
?>
Сделайте класс Validator,
который будет выполнять проверку
строк на корректность.
Сделайте в вашем классе метод
isEmail, проверяющий строку на то,
что она корректный email.
Сделайте в вашем классе метод
isDomain, проверяющий строку на то,
что она корректное имя домена.
Сделайте в вашем классе метод
isNumber, проверяющий строку на то,
что она содержит только числа.