Pull to refresh

Comments 4

Жаль что в PHP нет поддержки аспектов можно было бы что то вроде этого написать
class LazyPDO extends PDO implements Serializable {
... 
public function before($method,$args) {
 if  ( !($method == 'init' || $method == '__construct') ){
	$this->init();
 }  
 return call($mehtod,$args);
}

вместо того что бы добавлять $this->init(); в каждый метод класса
было бы идеально если бы существовали магические функции такие как
_berore()
_after()
иногда это может быть полезным
Боюсь, что такие методы работали бы так же медленно, как и call_user_func(). Спасибо за комментарий.
да возможно, но мечтать не вредно. Всё же эти методы были бы полезными. Это хорошо что в PDO чуть больше 10 методов. А представьте если бы PDO был наследником 3 — 4 классов и методов в нём было бы штук 30 — 40 и init() пришлось бы добавлять в них всё. Это был бы неблагодарный труд. С _before() эта задача сводилась бы к написанию одного метода. Хотя такая задача очень редко встречается
Sign up to leave a comment.

Articles