- Автор темы
- #1
Добрый вечер всем. Я пытаюсь получить данные, для отправки их POST запросом. У меня имеется JSON, который я перегнал в массив. Данный массив имеет более 10-ти вложений и получился больше, чем на 500 строк. Мне необходимо получить значения элементов массива, зная их ключи из 9-того вложения. Перебирать его весь форичем - это возможно. Но, думаю, что есть куда более элегантный способ.
+ еще что против данного способа перебора - это отсутствие уверенности, что не будет изменена его структура. Какие есть идеи? Массив ассоциативный.
Свернул бы его в одномерный, но ключи у меня к сожалению тогда состыкуются и перезапишутся)). Самым красивым вариантом, наверно, было-бы сделать из данного многомерного, просто, для каждого элемента объединив ключи. Но, как это сделать - пока тоже не представляю, кроме, как перебора.
Т.е.
([key1].[key2].[key3].[key4].[key5].[key6].[key7].[key8].[keyN]) => [value]
Нашел функцию
array_column , но что-то ее даже из мануала не смог запустить)) Видно, уже светает.
Еще есть одна бредовая идея - это сделать array_flip(), дальше сделать поиск нужных элементов и перевернуть его назад.
Спасибо.
+ еще что против данного способа перебора - это отсутствие уверенности, что не будет изменена его структура. Какие есть идеи? Массив ассоциативный.
Свернул бы его в одномерный, но ключи у меня к сожалению тогда состыкуются и перезапишутся)). Самым красивым вариантом, наверно, было-бы сделать из данного многомерного, просто, для каждого элемента объединив ключи. Но, как это сделать - пока тоже не представляю, кроме, как перебора.
Т.е.
([key1].[key2].[key3].[key4].[key5].[key6].[key7].[key8].[keyN]) => [value]
Нашел функцию
array_column , но что-то ее даже из мануала не смог запустить)) Видно, уже светает.
Еще есть одна бредовая идея - это сделать array_flip(), дальше сделать поиск нужных элементов и перевернуть его назад.
Код:
Array
(
[0] => Array
(
[model] => environment
[data] => Array
(
[agent] => Array
(
[hasAdblock] =>
[BrowserEngine] => Gecko
[BrowserEngineVersion] => 55.0
[BrowserName] => Firefox
[BrowserVersion] => 55.0
[OSFamily] => Windows
[OSName] => Windows 7
[OSVersion] => 6.1
[isBrowser] => 1
[isMobile] =>
[x64] => 1
[botSocial] =>
[isSupported] => 1
)
[session] => Array
(
[tld] => sk
[nonce] => 07133375504054129
[canHaveAuth] =>
[public] => Array
(
[nai11ExvhSXbx] => /a3rCupHsDfSNsTPU/xfQ/AhyGMZQk20EyCE5PQUPmc=
)
[locale] => ru
[region] => Array
(
[id] => 213
[chain] => Array
(
[0] => 213
[1] => 1
[2] => 3
[3] => 225
[4] => 10001
[5] => 10000
)
[country] => Ðîññèÿ
[country_iso] => RU
[country_tld] => ru
Спасибо.
Последнее редактирование: