⊗ppMVDFmMdP 35 of 35 menu

ყველა მოდელის მშობლის რეალიზაცია საკუთარ MVC ფრეიმვორკში

მოდით განვახორციელოთ ყველა მოდელის მშობელი კლასი:

<?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štinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語Қазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა