Я знаю, что я могу создать класс во время выполнения, выполнив $obj = (object)array('foo' => 'bar');+ таким образом я могу использовать echo $obj->foo; //bar Что делать, если хотите, чтобы $ obj наследовался от существующего класса? Что я хочу достичь: я нарисовал проект paris на github ( https://github.com/balanza/paris ). Это активный класс записей. Интересно, мне нужно […]
Я только начал изучать OOPS в php. Я написал простую программу для реализации наследования. Я получаю фатальную ошибку $ this, если не в контексте объекта. Может ли кто-нибудь объяснить мне эту ошибку, что это значит? вот мой код: <?php class human{ public $gender; public function _construct($gender) { $this->gender=$gender; echo $this->get_gender(); } public function get_gender() { […]
У меня есть иерархия классов, представляющих элементы html. Некоторые из них могут быть несовместимы с некоторыми версиями браузера. Например, холст HTML5 не совместим с Internet Explorer до версии 9. Я хотел бы, чтобы каждый тип элемента мог знать, поддерживаются или не поддерживаются вызывающим браузером. abstract class AbstractView // Base class, doesn't represent anything. { // […]
Когда вы используете композицию, вы можете высмеивать другие объекты, из которых зависит ваш класс под тестом, но когда вы используете наследование, вы не можете издеваться над базовым классом. (Или вы можете?) Обычно я стараюсь отдать предпочтение композиции над наследованием , но иногда наследование действительно кажется лучшим инструментом для работы – ну, по крайней мере, до […]
Я импортировал исходную папку PHP в Enterprise Architect. Теперь я хотел бы видеть цепочку наследования любого конкретного класса. Другими словами, я хотел бы увидеть одну большую диаграмму, отображающую все отношения класса. Большинство классов находятся в папках отдельно от родительского / дочернего класса. Как мне это сделать..? Это была моя причина для установки Enterprise Architect: я […]
Я пишу библиотеку в PHP 5.3, основная часть которой представляет собой класс с несколькими статическими свойствами, который расширяется из подклассов, чтобы разрешить ноль-conf для дочерних классов. Во всяком случае, вот образец, чтобы проиллюстрировать ту особенность, которую я нашел: <?php class A { protected static $a; public static function out() { var_dump(static::$a); } public static function […]