⊗ppOpCgCC 43 of 107 menu

Κλήση μεθόδου αμέσως μετά τη δημιουργία αντικειμένου στην αντικειμενοστρεφή προγραμματισμό στην PHP

Ας υποθέσουμε ότι έχουμε μια κλάση Arr, η οποία αποθηκεύει έναν πίνακα αριθμών και μπορεί να υπολογίζει το άθροισμα αυτών των αριθμών χρησιμοποιώντας τη μέθοδο getSum. Οι ίδιοι οι αριθμοί περνάνε ως πίνακας στον κατασκευαστή του αντικειμένου, και μπορούν επίσης να προστεθούν ένας-ένας χρησιμοποιώντας τη μέθοδο add:

<?php class Arr { private $numbers = []; public function __construct($numbers) { $this->numbers = $numbers; } public function add($number) { $this->numbers[] = $number; } public function getSum() { return array_sum($this->numbers); } } ?>

Ακολουθεί ένα παράδειγμα χρήσης της κλάσης Arr:

<?php $arr = new Arr([1, 2, 3]); $arr->add(4); $arr->add(5); echo $arr->getSum(); // θα εμφανίσει 15 ?>

Μπορεί να συμβεί ότι όλοι οι απαραίτητοι αριθμοί θα τους περάσουμε τη στιγμή της δημιουργίας του αντικειμένου, και στη συνέχεια αμέσως να θέλουμε να βρούμε το άθροισμά τους:

<?php $arr = new Arr([1, 2, 3]); echo $arr->getSum(); // θα εμφανίσει 6 ?>

Αν δεν σκοπεύουμε να κάνουμε άλλους χειρισμούς με το αντικείμενο, τότε ο παραπάνω κώδικας μπορεί να γραφτεί πιο σύντομα: μπορούμε να δημιουργήσουμε το αντικείμενο και αμέσως να καλέσουμε τη μέθοδο getSum:

<?php echo (new Arr([1, 2, 3]))->getSum(); // θα εμφανίσει 6 ?>

<?php class StringProcessor { private $str = ''; public function __construct($text) { $this->str = $text; } public function append($text) { $this->str .= $text; return $this; } public function getValue() { return $this->str; } public function getLength() { return strlen($this->str); } } ?>

Ας υποθέσουμε ότι δουλέψαμε με αυτήν την κλάση ως εξής:

<?php $str = new Str('aaa'); $str->append('bbb'); $str->append('ccc'); echo $str->getLength(); ?>

Ξαναγράψτε αυτόν τον κώδικα μέσω της κλήσης της κλάσης επί τόπου.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη