Я администрирую довольно старую систему.На данный момент это кодовый суп, и постепенно я рефакторинг кода.
Что-то, что я заметил при этом, было то, что 90% запросов были CRUD.Нет соединений, ничего больше.Все действительно простые вещи.
В результате я создал класс модели, который охватывает эти типы запросов.Затем я расширяю класс модели для каждой таблицы.
class Model extends MySQLi {
public function __construct() {
global $site;
$mysql = $site['mysql'];
parent::__construct($mysql['host'], $mysql['user'], $mysql['pass'], $mysql['db']);
}
Мне не нравится использование global, но оно позволяет мне делать это, не беспокоясь о деталях соединения.
<?php
class Contact extends Model {
public $table = 'contact';
}
$Contact = new Contact;
$Contact->get(array('where'=>array('id >' => 4), 'limit' => array(0, 20));
Меня беспокоит, что еслиСценарий требует 3 таблицы.Я буду использовать 3 модели, и, таким образом, это значит, что у меня будет 3 независимых подключения к базе данных?По одному на каждый класс?
Будет ли это проблемой, как я думаю, будет?
Есть ли обходной путь, который позволит мне продолжить расширять MySQLi и, возможно, пропустить его?активное соединение, а не детали соединения для него, чтобы сделать свое собственное соединение?