⊗ppMVDFmMdP 35 of 35 menu

Implementasi Induk Semua Model dalam Framework MVC Sendiri

Mari kita implementasikan kelas induk untuk semua model:

<?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) { // akan ada beberapa kode di sini } protected function findMany($query) { // akan ada beberapa kode di sini } } ?>

Seperti yang Anda lihat, dalam konstruktor kelas kita melakukan koneksi ke basis data. Namun, ada masalah: setiap model yang dibuat (jika dalam satu aksi controller terdapat beberapa model) akan membuat koneksinya sendiri ke basis data, dan ini tidak optimal.

Mari kita buat agar koneksi ke basis data hanya dibuat untuk model pertama yang dibuat, dan model lainnya menggunakan koneksi yang sudah dibuat. Untuk itu, properti link kita buat statis:

<?php namespace Core; class Model { private static $link; public function __construct() { if (!self::$link) { // jika properti belum diatur, maka lakukan koneksi 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) { } } ?>

Salin kode kelas Model yang diberikan dan tempatkan di file /core/Model.php.

Implementasikan metode findOne di kelas ini. Uji kerjanya.

Implementasikan metode findMany di kelas ini. Uji kerjanya.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak