Klasse als verzameling methodes in OOP in PHP
Soms worden klassen gebruikt voor het groeperen van methodes met een vergelijkbaar thema. In dit geval wordt over het algemeen slechts één object van deze klasse gemaakt en worden zijn methodes vele malen gebruikt in verschillende situaties.
Laten we een voorbeeld bekijken. Laten we een klasse maken die met arrays van getallen zal manipuleren:
<?php
class ArrHelper {
}
?>
Elke methode van deze klasse zal als parameter een array ontvangen en er een bepaalde bewerking op uitvoeren. Stel dat we bijvoorbeeld de volgende methodes hebben:
<?php
class ArrHelper {
public function getSum($arr) {
// som van elementen
}
public function getAvg($arr) {
// rekenkundig gemiddelde
}
}
?>
Laten we de implementatie van deze methodes schrijven:
<?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;
}
}
}
?>
Laten we eens kijken hoe we deze methodes zullen gebruiken. Laten we een object van onze klasse maken:
<?php
$arrHelper = new ArrHelper();
?>
Laten we met behulp van ons object de som van getallen van verschillende arrays vinden:
<?php
$sum1 = $arrHelper->getSum([1, 2, 3]);
var_dump($sum1);
$sum2 = $arrHelper->getSum([3, 4, 5]);
var_dump($sum2);
?>
Maak een klasse Validator,
die strings zal controleren
op correctheid.
Maak in je klasse een methode
isEmail, die een string controleert of
het een correcte email is.
Maak in je klasse een methode
isDomain, die een string controleert of
het een correcte domeinnaam is.
Maak in je klasse een methode
isNumber, die een string controleert of
het alleen cijfers bevat.