Не понимаю, для чего нужны классы в 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();
Простенько запускаем, делаем запрос и выводим результат. Красиво, удобно.
Комментариев нет:
Отправить комментарий