Мне было интересно об этом в течение нескольких недель. Моя практика кода заключается в создании нескольких классов (вставка, обновление, удаление и т. Д.), А затем создание функций внутри этого.PHP, использующий лучший код
Проблема заключается в том, что для каждой функции я сделать что-то вроде:
public function clients(){
$db = new mysqli($this->host, $this->user, $this->pass, $this->db);
if ($db->connect_errno) {
printf("Connecting error" . $db->connect_error);
return false;
exit();
}
$db->set_charset("utf8");
$visibile = true;
$query = $db->prepare("SELECT * FROM clients WHERE visible = ?");
$query->bind_param("i", $visible);
$query->execute();
$query->bind_result($id, $name, $address, $photo);
$query->store_result();
$rows = array();
while($query->fetch()){
$rows[] = array("id" => $id, "name" => $name, "address" => $address, "photo" => $photo);
}
$query->close();
$db->close();
return $rows;
}
Я думал о сокращении этого code..at наименьшую соединение в начале каждой функции.
// currently call
include_once('select.php');
$select = new select();
$rows = $select->clients();
Что-то лучше было бы
$select = new select();
$rows = $select->connect()->clients();
Или еще лучше
$rows = $connect->select()->clients();
Я знаю, что это возможно, я просто не знаю, как. Или есть даже лучший подход, чем этот?
Возникли классы, имена которых глаголы это вы структурирование вещи странно определенный знак , Какие данные и методы вы инкапсулируете в «Выбрать» или «Обновить»? – geoffspear
Вторичный @Wooble. Ваша структура классов, безусловно, странная, но начать работу с принципами DI станет хорошим первым шагом. – deceze
Почему это странно? Лучше читать '$ select-> clients()' и '$ insert-> clients ($ name)', чем '$ variable-> insert_clients()'. – user3243925