Я хотел бы иметь возможность использовать прозрачное (плохое управление) кэширование объектов, используя конструктор, а не какой-либо фабричный метод.
$a = new aClass();
должен проверить, существуют ли эти объекты в кеше и есть лине существует, создайте его и добавьте в кеш.
Некоторый псевдокод:
class aClass {
public function __construct($someId) {
if (is_cached($someId) {
$this = get_cached($someId);
} else {
// do stuff here
set_cached($someId, $this);
}
}
}
К сожалению, это невозможно, потому что вы не можете переопределить $this
в php.
Есть предложения?