⊗ppMVDFmMdP 35 of 35 menu

Implementação do pai de todos os modelos

Vamos implementar a classe pai de todos os modelos:

<?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) { // тут будет какой-то код } } ?>

Como você pode ver, no construtor da classe estamos realizando a conexão com o banco de dados. No entanto, existe um problema: cada modelo criado (se dentro de uma única ação do controlador houver vários modelos) fará sua própria conexão ao banco de dados, o que não é ideal.

Vamos fazer com que a conexão com o banco de dados seja criada apenas para o primeiro modelo criado, e os modelos subsequentes usem a conexão já estabelecida. Para isso, vamos tornar a propriedade link estática:

<?php namespace Core; class Model { private static $link; public function __construct() { if (!self::$link) { // se a propriedade não estiver definida, conectamos 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) { } } ?>

Copie o código da classe Model fornecido e coloque-o no arquivo /core/Model.php.

Implemente o método findOne nesta classe. Verifique seu funcionamento.

Implemente o método findMany nesta classe. Verifique seu funcionamento.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar