Clasa ca set de metode în OOP în PHP
Uneori clasele sunt folosite pentru grupare metodelor cu tematică similară. În acest caz de obicei se creează doar un singur obiect al acestei clase și metodele sale sunt utilizate de multe ori în diverse situații.
Să vedem un exemplu. Să facem o clasă care va manipula array-uri de numere:
<?php
class ArrHelper {
}
?>
Fiecare metodă a acestei clase va primi ca parametru un array și va executa asupra lui operația specificată. Să presupunem, de exemplu, că avem următoarele metode:
<?php
class ArrHelper {
public function getSum($arr) {
// suma elementelor
}
public function getAvg($arr) {
// media aritmetică
}
}
?>
Să scriem implementarea acestor metode:
<?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;
}
}
}
?>
Să vedem cum vom utiliza aceste metode. Să creăm un obiect al clasei noastre:
<?php
$arrHelper = new ArrHelper();
?>
Să găsim cu ajutorul obiectului nostru suma numerelor din diverse array-uri:
<?php
$sum1 = $arrHelper->getSum([1, 2, 3]);
var_dump($sum1);
$sum2 = $arrHelper->getSum([3, 4, 5]);
var_dump($sum2);
?>
Creați o clasă Validator,
care va efectua verificarea
sirurilor de caractere pe corectitudine.
Creați în clasa dvs. o metodă
isEmail, care verifică dacă șirul este
un email corect.
Creați în clasa dvs. o metodă
isDomain, care verifică dacă șirul este
un nume de domeniu corect.
Creați în clasa dvs. o metodă
isNumber, care verifică dacă șirul
conține doar numere.