| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > поиск по stdClass |
| Автор: zebulun 10.8.2013, 16:51 |
| Какой принцип нахождения нужного элемента объекта, если известно значения его свойства? |
| Автор: Fortop 10.8.2013, 17:36 |
| В чем вопрос? Принцип зависит от того как у вас хранятся сами эти stdClass |
| Автор: ksnk 10.8.2013, 17:38 |
| Какой многозначительный вопрос. Чем нибудь не устраивает перебор всех элементов? |
| Автор: zebulun 10.8.2013, 17:40 | ||
| В смысле в чем вопрос?Есть объект с элементами, у которых есть какое-то свойство - property1==value1. Нам известно значение этого свойства, как узнать у какого элемента, свойство property1==value1 Добавлено через 2 минуты и 27 секунд
Да, перебор не устраивает, точнее не желателен, т.к у меня идет перебор свойств в цикле и не хотелось бы в каждой итерации делать перебор |
| Автор: ksnk 10.8.2013, 18:00 |
| В реляционных базах данных, для которых такая задача типична, строят отдельную ключ-таблицу (массив) с соответствием значение -объект. |
| Автор: zebulun 10.8.2013, 18:09 | ||
Вы предлагаете создавать временную таблицу? |
| Автор: ksnk 10.8.2013, 18:46 |
Я предлагаю сформулировать условия задачи более конкретно. |
| Автор: zebulun 10.8.2013, 19:33 |
| как конкретней, куча однородных элементов в объекте, знаем значение свойства какого-то элемента , как найти элемент? |
| Автор: ksnk 10.8.2013, 20:36 |
| Куча - это сколько? 2-3, десяток или пара миллионов? Какие решения пробовались? |
| Автор: Fortop 10.8.2013, 21:26 |
В куче кроме простого перебора других вариантов поиска нет. Вот если бы у вас была http://ru.wikipedia.org/wiki/%D0%9A%D1%83%D1%87%D0%B0_(%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85) |
| Автор: zebulun 10.8.2013, 21:39 | ||
Какая разница сколько?ну 20-30, или 50 , просто у меня цикл скажем из 500-1000 итераций(объект А), в каждой итерации получаю значение одного свойства элемента в объекте В и, получается, в каждой итерации объекта А надо делать еще один цикл для поиска элемента в объекте В. |
| Автор: Fortop 10.8.2013, 22:01 |
| zebulun, повторю специально для вас. Пока у вас имеется неупорядоченный набор элементов, то кроме простого и тупого перебора никаких вариантов для вас нет. Чтобы иметь возможность искать быстро вам нужно их упорядочить по искомому полю. |