La classe comme ensemble de méthodes en POO en PHP
Parfois, les classes sont utilisées pour regrouper des méthodes de thématique similaire. Dans ce cas, généralement, un seul objet de cette classe est créé et ses méthodes sont utilisées de nombreuses fois dans diverses situations.
Regardons un exemple. Créons une classe qui va manipuler des tableaux de nombres :
<?php
class ArrHelper {
}
?>
Chaque méthode de cette classe recevra un tableau en paramètre et effectuera sur lui une opération donnée. Imaginons, par exemple, que nous ayons les méthodes suivantes :
<?php
class ArrHelper {
public function getSum($arr) {
// somme des éléments
}
public function getAvg($arr) {
// moyenne arithmétique
}
}
?>
Écrivons l'implémentation de ces méthodes :
<?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;
}
}
}
?>
Voyons comment nous allons utiliser ces méthodes. Créons un objet de notre classe :
<?php
$arrHelper = new ArrHelper();
?>
Trouvons à l'aide de notre objet la somme des nombres de différents tableaux :
<?php
$sum1 = $arrHelper->getSum([1, 2, 3]);
var_dump($sum1);
$sum2 = $arrHelper->getSum([3, 4, 5]);
var_dump($sum2);
?>
Créez une classe Validator,
qui effectuera la vérification
de chaînes de caractères sur leur correction.
Créez dans votre classe la méthode
isEmail, vérifiant si la chaîne est
un email correct.
Créez dans votre classe la méthode
isDomain, vérifiant si la chaîne est
un nom de domaine correct.
Créez dans votre classe la méthode
isNumber, vérifiant si la chaîne
ne contient que des nombres.