| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Работа с двумерным массивом |
| Автор: n4yk 17.8.2011, 17:39 | ||
Есть массив примерно такого вида, состоящий из ~1000 вложенных массивов с 3мя ключами:
Нужно уникализировать старший массив по значению ключа внутреннего, например убрать повторяющиеся массивы с одинаковым значением ip. (после сортировки по такому критерию должен будет уйти 3й массив). Также нужно при добавлении нового массива, проверять есть ли уже массив с таким же значением ключа ip. Нужно наиболее скоростное и рациональное решение на php5, возможно внесение изменений в структуру всего массива, если это будет рационально. Спасибо. |
| Автор: hunterman 18.8.2011, 07:27 |
| создаешь класс и реализуешь интерфейсы ArrayAccess,IteratorAggregate,Countable делаешь в нем член класса protected $data; к примеру ну и всё ну и еще один способ использовать класс SplObjectStorage(http://ua.php.net/manual/en/class.splobjectstorage.php) зы если нужна уникальность только по ip к примеру - то можно модифицировать твою структуру и в качестве ключа сделать ip тогда не надо будет проверять на его уникальность. и выборка будет по айпишнику быстрее. |
| Автор: Valinur 18.8.2011, 12:14 |
| А почему нельзя просто ключом сделать IP? |