Η Κλάση ως Σύνολο Μεθόδων στην αντικειμενοστρεφή προγραμματισμό στην PHP
Μερικές φορές οι κλάσεις χρησιμοποιούνται για την ομαδοποίηση μεθόδων παρόμοιας θεματολογίας. Σε αυτήν την περίπτωση γενικά δημιουργείται μόνο ένα αντικείμενο αυτής της κλάσης και οι μέθοδοί του χρησιμοποιούνται πολλές φορές σε διάφορες καταστάσεις.
Ας δούμε ένα παράδειγμα. Ας φτιάξουμε μια κλάση που θα χειρίζεται πίνακες αριθμών:
<?php
class ArrHelper {
}
?>
Κάθε μέθοδος αυτής της κλάσης θα δέχεται ως παράμετρο έναν πίνακα και θα εκτελεί πάνω του μια δεδομένη πράξη. Ας υποθέσουμε, για παράδειγμα, ότι έχουμε τις ακόλουθες μεθόδους:
<?php
class ArrHelper {
public function getSum($arr) {
// άθροισμα στοιχείων
}
public function getAvg($arr) {
// αριθμητικός μέσος όρος
}
}
?>
Ας γράψουμε την υλοποίηση αυτών των μεθόδων:
<?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;
}
}
}
?>
Ας δούμε πώς θα χρησιμοποιούμε αυτές τις μεθόδους. Ας δημιουργήσουμε ένα αντικείμενο της κλάσης μας:
<?php
$arrHelper = new ArrHelper();
?>
Ας βρούμε με τη βοήθεια του αντικειμένου μας το άθροισμα αριθμών διαφόρων πινάκων:
<?php
$sum1 = $arrHelper->getSum([1, 2, 3]);
var_dump($sum1);
$sum2 = $arrHelper->getSum([3, 4, 5]);
var_dump($sum2);
?>
Φτιάξτε μια κλάση Validator,
η οποία θα εκτελεί έλεγχο
συμβολοσειρών για ορθότητα.
Φτιάξτε στην κλάση σας μια μέθοδο
isEmail, που ελέγχει αν μια συμβολοσειρά είναι
ένα έγκυρο email.
Φτιάξτε στην κλάση σας μια μέθοδο
isDomain, που ελέγχει αν μια συμβολοσειρά είναι
ένα έγκυρο όνομα domain.
Φτιάξτε στην κλάση σας μια μέθοδο
isNumber, που ελέγχει αν μια συμβολοσειρά περιέχει μόνο αριθμούς.