У меня есть родительский объект, который я использую для общего CRUD в моих приложениях – он имеет базовые методы сохранения и извлечения, поэтому мне не нужно их повторно включать во все мои объекты. Большинство моих дочерних объектов расширяют этот базовый объект. Это отлично работает, но я обнаружил проблему с получением сериализованного дочернего объекта. Я использую […]
Любые реальные простые образцы использования абстрактного класса? Я пытаюсь войти в ООП PHP, но я все еще не могу понять – зачем использовать абстрактный класс и когда (Да, я знаю, что невозможно создать экземпляр абстрактного класса, только экземпляр класса, наследующий его).
Приветствую всех! Поиск некоторой помощи с MVC в контексте PHP. В настоящее время я создаю небольшую легковесную структуру MVC для ускорения разработки приложений на работе. Это длинное жесткое разделение, исключающее встроенный код – по крайней мере, с многочисленными проектами, нависшими над головой и соблазном использовать его постоянно. Я понимаю большинство основных требований MVC, и я […]
Я только начал изучать объектно-ориентированное программирование сегодня, и только по наблюдению заметили, что во всех примерах переменные-члены являются частными. Почему так обычно бывает? // Class class Building { // Object variables/properties private $number_of_floors = 5; // These buildings have 5 floors private $color; // Class constructor public function __construct($paint) { $this->color = $paint; } public […]
Когда вы используете композицию, вы можете высмеивать другие объекты, из которых зависит ваш класс под тестом, но когда вы используете наследование, вы не можете издеваться над базовым классом. (Или вы можете?) Обычно я стараюсь отдать предпочтение композиции над наследованием , но иногда наследование действительно кажется лучшим инструментом для работы – ну, по крайней мере, до […]
Я пытался использовать array_walk_recursive для чего-то и хотел использовать один из методов класса в качестве обратного вызова, поэтому попробуйте: array_walk_recursive($TAINTED, "$this->encode()"); и их вариации не удались. В конце концов я решил: array_walk_recursive($TAINTED, 'className::encode'); который работает, но я читал здесь, что методы вызова класса в статическом стиле, подобные этому, часто считаются плохой практикой. Или это одна […]
Я очень новичок в ООП, и теперь я пытаюсь написать некоторый PHP-класс для подключения к FTP-серверу. class ftpConnect { private $server; private $user; private $password; private $connection_id; private $connection_correct = false; public function __construct($server, $user = "anonymous", $password = "anonymous@mail.com") { $this->server = $server; $this->user = $user; $this->password = $password; $this->connection_id = ftp_connect($this->server); $this->connection_correct = […]
Я создаю пользовательскую структуру MVC с помощью PHP. Моя проблема в том, когда я хочу получить доступ к любому классу модели через класс контроллера. Один из способов, который я видел, это сделать через шаблон дизайна реестра, используя магические методы, такие как get и set, хотя PHP get и set считаются плохой практикой для некоторых. Я […]
Возможный дубликат: Каков наилучший способ слияния двух объектов PHP? У меня есть объект $ foo, у которого есть некоторые методы и свойства, которые уже определены, а другой объект – $ bar, который является всего лишь набором свойств. Я хочу объединить все $ bar в $ foo, так что все свойства $ bar становятся свойствами $ […]
У меня есть класс под названием «Макет» для макета страницы, другой класс, называемый «Пользователь» для пользователя. Каждая страница, которую я создаю, создаю новый макет. Когда пользователь входит в систему, создается новый Пользователь. Как получить экземпляр класса макета, чтобы узнать об инстанцированном пользователе? Я мог бы также сохранить весь экземпляр пользователя в переменной сеанса. Я предполагаю, […]