Classe como conjunto de métodos em POO em PHP
Às vezes, as classes são usadas para agrupar métodos de temática semelhante. Nesse caso, geralmente apenas um objeto dessa classe é criado e seus métodos são usados muitas vezes em várias situações.
Vamos ver um exemplo. Vamos fazer uma classe que irá manipular arrays de números:
<?php
class ArrHelper {
}
?>
Cada método desta classe receberá um array como parâmetro e executará uma operação definida sobre ele. Vamos supor, por exemplo, que tenhamos os seguintes métodos:
<?php
class ArrHelper {
public function getSum($arr) {
// soma dos elementos
}
public function getAvg($arr) {
// média aritmética
}
}
?>
Vamos escrever a implementação desses métodos:
<?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;
}
}
}
?>
Vamos ver como vamos usar esses métodos. Vamos criar um objeto da nossa classe:
<?php
$arrHelper = new ArrHelper();
?>
Vamos encontrar a soma de números de vários arrays usando nosso objeto:
<?php
$sum1 = $arrHelper->getSum([1, 2, 3]);
var_dump($sum1);
$sum2 = $arrHelper->getSum([3, 4, 5]);
var_dump($sum2);
?>
Faça uma classe Validator,
que realizará a verificação
de strings quanto à correção.
Faça em sua classe o método
isEmail, verificando se a string é
um email correto.
Faça em sua classe o método
isDomain, verificando se a string é
um nome de domínio correto.
Faça em sua classe o método
isNumber, verificando se a string
contém apenas números.