Мне нужно определить, после того, как все файлы были включены, какие классы расширяют родительский класс, поэтому: class foo{ } class boo extends foo{ } class bar extends foo{ } и я хотел бы иметь возможность захватить массив вроде: array('boo','bar');
При объявлении значений по умолчанию для свойств в классе PHP кажется, что вы не можете использовать конкатенацию. Для этого есть причина? class Foo { public $property = __DIR__ . '/'; }
Я только начал изучать концепцию объектно-ориентированного программирования и собрал класс для подключения к базе данных, выбора базы данных и закрытия соединения с базой данных. Пока все работает нормально, кроме закрытия соединения с базой данных. class Database { private $host, $username, $password; public function __construct($ihost, $iusername, $ipassword){ $this->host = $ihost; $this->username = $iusername; $this->password = $ipassword; […]
Могу ли я использовать нестатические члены внутри статического метода? например. $this->nonStaticProperty $this->nonStaticMethod() и наоборот, то есть использовать статические элементы внутри нестатических методов?
есть ли способ пересечь объект, чтобы получить данные родительского объекта? С «родительским объектом» я не имею в виду родительский класс, но буквально объект. Вот пример, в мире javascripty :-): $parent->test = "hello world!"; $parent->child = new B(); Было бы здорово, если бы я мог получить доступ ко всем данным от родителя в дочернем объекте: class […]
У меня есть интерфейс interface IModule { public function Install(); } и некоторые классы, реализующие этот интерфейс class Module1 implements IModule { public function Install() { return true; } } class Module2 implements IModule { public function Install() { return true; } } … class ModuleN implements IModule { public function Install() { return true; […]
Почему это законно в PHP? <?php class Foo { public function test() { echo "hello\n"; } } Foo::test(); ?> test () является нестатической функцией, но я могу получить к ней доступ без экземпляра.
Я не говорю о наследовании. И я не говорю о вложенных объектах . Я говорю: System::Web::Templating(…) вид гнездования. Это классы, из которых вы не должны создавать экземпляры .. так что …
Я хочу создать класс PHP, скажем Myclass.php. Теперь внутри этого класса я хочу определить только сам класс и некоторые переменные экземпляра. Но все методы должны поступать из файла Myclass_methods.php. Могу ли я просто включить этот файл в тело класса? У меня есть веские причины, по которым я хочу отделить это. Короче говоря, у меня будет […]
PHP – это мой первый язык программирования. Я не могу полностью обернуть свою голову, когда использовать статические классы и объекты-экземпляры. Я понимаю, что вы можете дублировать и клонировать объекты. Однако за все время, когда я использовал php, любой объект или функция всегда оказывался единственным значением return (array, string, int) или void. Я понимаю понятия в […]