⊗ppMVDFmMdP 35 of 35 menu

Az összes modell szülőjének implementációja

Implementáljuk az összes modell szülőosztályát:

<?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) { // itt lesz valami kód } protected function findMany($query) { // itt lesz valami kód } } ?>

Amint látod, az osztály konstruktorában adatbázis kapcsolatot hozunk létre. Van azonban egy probléma: minden létrehozott modell (ha egy kontroller műveleten belül több modell is lesz) saját kapcsolatot fog létesíteni az adatbázissal, ami nem optimális.

Tegyük úgy, hogy az adatbázis kapcsolat csak az első létrehozott modellhez jöjjön létre, a többi modell pedig a már létrehozott kapcsolatot használja. Ehhez a link tulajdonságot statikussá tesszük:

<?php namespace Core; class Model { private static $link; public function __construct() { if (!self::$link) { // ha a tulajdonság nincs beállítva, akkor csatlakozunk 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) { } } ?>

Másold az adott Model osztály kódját és helyezd el a /core/Model.php fájlban.

Implementáld a findOne metódust ebben az osztályban. Ellenőrizd a működését.

Implementáld a findMany metódust ebben az osztályban. Ellenőrizd a működését.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás