|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
|
Массив объектов19.03.2014, 15:45. Показов 4031. Ответов 37
Метки нет (Все метки)
Привет всем, мне нужно создать массив с названиями объектов. И удалять из него объекты при определенном условии. То есть есть класс apple, на основе которого создаются объекты, например $apple1, $apple2 и так далее. Каждый из объектов должен попасть в массив. И при выполнении условия, например $color = green, объект должен удаляться из массива.
0
|
|
| 19.03.2014, 15:45 | |
|
Ответы с готовыми решениями:
37
Массив объектов Jasmine. Имеется массив из N объектов , необходимо проверить, что какие-то M объектов входят в этот массив
|
|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
||||||
| 20.03.2014, 14:16 [ТС] | ||||||
|
Подскажите, как можно удалить элемент массива, подходящий по условию? То есть массив содержит объекты с параметрами(грубо говоря те же массивы). Если параметр соответствует условию, то нужно удалить этот объект из массива. Получается:
0
|
||||||
|
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
|
||||||
| 20.03.2014, 14:26 | ||||||
|
что то типа этого
1
|
||||||
|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
||||||
| 20.03.2014, 17:20 [ТС] | ||||||
|
Спасибо )))
Добавлено через 2 часа 18 минут С добавлением объектов в массив не разобрался. Есть класс регистр, в нем в массив $apples должны добавляться объекты класса apple. А по какому событию они добавляются? Ведь мы в функцию ничего не передаем. Получается, что чтобы объект добавился в массив, нам нужно вызвать функцию и передать туда параметр. А можно ли, сделать чтобы при создании объекта он автоматически попадал в масив $apples?
0
|
||||||
|
Почетный модератор
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 20.03.2014, 17:23 | |
|
0
|
|
|
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
|
||
| 20.03.2014, 17:25 | ||
|
1
|
||
|
Почетный модератор
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 20.03.2014, 17:30 | |
|
2
|
|
|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
|
| 20.03.2014, 17:56 [ТС] | |
|
А вызывать функцию из другого класса, который рсширяет каласс apple можно обычным способом $this->add(); ?
Выдается ошибка что метод не найден. Функция public static add(apple $apple) {};
0
|
|
|
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
|
||||||
| 20.03.2014, 17:58 | ||||||
|
функция статическая, ее можно вызвать
0
|
||||||
|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
||||||
| 20.03.2014, 18:43 [ТС] | ||||||
|
А на счет передачи в функцию параметров? Ведь в функцию aad($apple), передается параметр $apple. По идее это и есть объекты. Но, как сделать чтобы при создании объекта он сразу попадал в эту функцию? На счет вызово, да я так и сделал, в конструктор класса apple добавил вызов функции add($apple) и removeApples(). Но нужно, как-то передавать функции добавления создаваемые объекты.
Добавлено через 22 секунды
По идее нужно, как-то в функцию передавать созданные объекты. Простым способом понятно, что взял и отправил, что захотел, но суть здесь в том, как передавать в функцию объекты сразу после их создания. То есть создался объект и сразу в массив добавляется.
0
|
||||||
|
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
|
|
| 20.03.2014, 18:48 | |
|
не знаю поможет ли... попробуйте в конструкторе вызывать эту функцию с параметром $this
0
|
|
|
Почетный модератор
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 20.03.2014, 19:14 | ||||||
|
Навскидку, можно как-то так
1
|
||||||
|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
|
| 23.03.2014, 00:32 [ТС] | |
|
Два конструктора из разных классов не могут работать?
0
|
|
|
Почетный модератор
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 23.03.2014, 00:34 | ||||||
|
В смысле, свой конструктор в дочернем классе + родительский? Если да, то могут. Если нет, то полиморфизм, как таковой, в объектной модели пыха, по сути, отсутствует..
Добавлено через 1 минуту
0
|
||||||
|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
|
| 23.03.2014, 14:13 [ТС] | |
|
Нет, я в том смысле, что один конструктор находится в абстрактном классе, а другой в классе его расширяющем то есть в классе Apple, и при этом конструктор абстрактного класса перестает работать.
0
|
|
|
Почетный модератор
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 23.03.2014, 14:19 | ||||||
Сообщение было отмечено Maksimus1991 как решение
Решение
А я про что говорю, по вашему?
0
|
||||||
|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
||||||
| 23.03.2014, 14:37 [ТС] | ||||||
|
А, понял. Но у него могут быть свои параметры? Просто у меня как, только я добавляю конструктор в класс Apple , перестают добавляться объекты в массив _apples. Это в том случаи если создать свой конструктор без parent::, а если добавить родительский, то выдает ошибку синтаксиса '(' и пишет что невозможно передать несколько параметров. Запись выглядит так public funcrion parent::__construct($color) {}. Или тут нужно обязательно использовать вложение конструктора?
0
|
||||||
|
Почетный модератор
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 23.03.2014, 21:42 | ||||||
|
Вы переопределяете конструктор в дочернем классе. Как я уже говорил, полиморфизм в php реализован лишь частично, в одном классе два метода с одинаковыми именами определять нельзя. Вызов метода родительского класса осуществляется с помощью parent. "Свои" параметры могут быть.
1
|
||||||
|
12 / 6 / 1
Регистрация: 17.01.2014
Сообщений: 135
|
|
| 23.03.2014, 22:54 [ТС] | |
|
Спасибо, за помощь. Я разобрался. И теперь больше стал понимать.
0
|
|
| 23.03.2014, 22:54 | |
|
Массив объектов базового класса, позволяющий работать с набором объектов — чтение, вывод
В общем как заменить в подборе объектов и так чтобы не сохранял в массив объектов а в лист? с# При инициализации массива объектов в одном методе, этот массив объектов не видно в других методах
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek
ВВЕДЕНИЕ
Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|