⊗ppMVDFmMdP 35 of 35 menu

Υλοποίηση του γονέα όλων των μοντέλων στο δικό σας MVC framework

Ας υλοποιήσουμε την γονική κλάση όλων των μοντέλων:

<?php namespace Core; class Model { private $link; public function __construct() { $this->link = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME); mysqli_query($this->link, "SET NAMES 'utf8'"); } protected function findOne($query) { // εδώ θα υπάρχει κάποιος κώδικας } protected function findMany($query) { // εδώ θα υπάρχει κάποιος κώδικας } } ?>

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

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

<?php namespace Core; class Model { private static $link; public function __construct() { if (!self::$link) { // αν η ιδιότητα δεν έχει οριστεί, τότε συνδεόμαστε self::$link = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME); mysqli_query(self::$link, "SET NAMES 'utf8'"); } } protected function findOne($query) { } protected function findMany($query) { } } ?>

Αντιγράψτε τον παραπάνω κώδικα της κλάσης Model και τοποθετήστε τον στο αρχείο /core/Model.php.

Υλοποιήστε την μέθοδο findOne σε αυτή την κλάση. Ελέγξτε τη λειτουργία της.

Υλοποιήστε την μέθοδο findMany σε αυτή την κλάση. Ελέγξτε τη λειτουργία της.

Ελληνικά
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 για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη