Страницы

Поиск по вопросам

вторник, 2 октября 2018 г.

Для чего нужны классы?

Не понимаю, для чего нужны классы в PHP?
Допустим, есть function.php, в нём много много функций, выполняющих разные действия, функции частично содержат общие переменные и в некоторых случаях части их кодов совпадают.
Если все эти функции превратить в методы и засунуть в один класс, что изменится в лучшую сторону или по другому - для чего нужны классы?


Ответ

Пример работы с БД: $con = db_connect($data); $query = db_query($con, $data); $fetch = db_fetch($query); Опять же, нужна глобальная переменная $con, проверка результата каждый раз и т.п. Или вот класс: /** * @author * * @todo */ class Db { private $con, $query, $fetch; /** * */ function __construct($data) { return $this->con = db_connect($data); } /** * */ function query($data) { if($this->con) { $this->query = db_query($this->con, $data);
return $this; } else { throw new Exception('no connection to db'); } } /** * */ function fetch() { if($this->con) { return $this->fetch = db_fetch($this->query); } else { throw new Exception('no connection to db'); } } /** * */ function __destruct() { db_close($this->con); } /** * */ public static function create($data) { return new Db($data); } }
$Db = Db::create('host:localhost;login:1234...');
$fetch = $Db->query('SELECT * FROM db')->fetch(); Простенько запускаем, делаем запрос и выводим результат. Красиво, удобно.

Комментариев нет:

Отправить комментарий