У меня есть этот класс признаков: trait Example { protected $var; private static function printSomething() { print $var; } private static function doSomething() { // do something with $var } } И этот класс: class NormalClass { use Example; public function otherFunction() { $this->setVar($string); } public function setVar($string) { $this->var = $string; } } Но […]
Сегодня я начал работу над небольшим Java-приложением. У меня есть некоторый опыт работы с PHP OOP, и в основном принцип один и тот же. Хотя я думал, что он должен применяться в обоих направлениях. Но, например, ключевое слово используется по-разному, как я понимаю. В Java class Params { public int x; public int y; public […]
Я изучаю OO и классы, у меня есть пара вопросов об OO и классах PHP Насколько я понимаю, класс, который расширяет другой класс, просто означает, что класс, который расширяет другой класс, имеет доступ к переменным / свойствам и функциям / методам класса, из которого он распространяется. Это верно? Я знаю, что статический метод или свойство […]
Я потратил последние несколько часов, пытаясь найти ответ на «лучший», самый логичный и т. Д. Способ написать класс базы данных php, чтобы одновременно подключиться к одному столбцу postgresql и одному mysql db. Кроме того, я хотел бы принять дизайн Injection Dependency, но я новичок в этой концепции. До сих пор я придумал … class Database […]
Я должен начать с того, что я не сейчас, и у меня нет иллюзий, что я когда-либо буду профессиональным программистом, поэтому большинство моих навыков были извлечены из опыта очень, как хобби. Я изучил PHP, поскольку это казалось простым простым введением в определенных областях, и это позволило мне создавать простые веб-приложения. Когда я узнал об объектах, […]
У меня есть класс Config в моем приложении, который загружает статические настройки конфигурации и анализирует их в массивы. Поскольку мне нужно переопределить некоторые элементы во время выполнения, мне нужно будет получить доступ к общедоступной переменной внутри класса Config -class, выполнив это; $config->values['onelevel']['twolevel'] = 'changed'; Я хотел бы сделать метод, который называется override который делает это […]
Как вызвать дочернюю функцию из родительской статической функции? В php5.3 существует встроенный метод get_called_class() для вызова метода child из родительского класса. Но мой сервер работает с php 5.1 . Есть ли способ сделать это? Я хочу вызвать его из статической функции. Так что я не могу использовать "$ this" Поэтому я должен использовать ключевое слово […]
В чем разница между этими двумя частями кода? class something { static function doit() { echo 'hello world'; } } something::doit(); и то же самое, но без ключевого слова static class something { function doit() { echo 'hello world'; } } something::doit(); Они оба работают одинаково, лучше ли использовать статические ключевые слова? Правильно ли я […]
Я понимаю, что singleton применяет класс, который будет создан один раз. Но почему экземпляр существует, если я не получаю его напрямую? Почему этот шаблон для, не проще ли просто использовать полный статический класс со статическими методами и данными?
У меня есть две переменные объекта в PHP, назовем их $a и $b . Я предполагаю, что они оба – один и тот же объект. И действительно, вызов spl_object_hash() подтверждает это, но каждый из них имеет разные свойства. Когда я запускаю: if(spl_object_hash($a) === spl_object_hash($b)){ echo "SAME HASH\n"; }else{ echo "DIFFERENT HASH\n"; } if(print_r($a,TRUE) === print_r($b,TRUE)){ […]