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
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
class ArrHelper {
public function getSum($arr) {
// súčet prvkov
}
public function getAvg($arr) {
// aritmetický priemer
}
}
?>
Napíšme implementáciu týchto metód:
<?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
$arrHelper = new ArrHelper();
?>
Nájdime pomocou nášho objektu súčet čísel rôznych polí:
<?php
$sum1 = $arrHelper->getSum([1, 2, 3]);
var_dump($sum1);
$sum2 = $arrHelper->getSum([3, 4, 5]);
var_dump($sum2);
?>
Vytvorte triedu Validator,
ktorá bude vykonávať kontrolu
reťazcov na správnosť.
Vytvorte vo vašej triede metódu
isEmail, kontrolujúcu reťazec na to,
či je to správny email.
Vytvorte vo vašej triede metódu
isDomain, kontrolujúcu reťazec na to,
či je to správne meno domény.
Vytvorte vo vašej triede metódu
isNumber, kontrolujúcu reťazec na to,
či obsahuje iba čísla.