Задать вопрос
@makboriska

Как получить значение из многомерного массива php?

Есть json файл в котором есть информацию по компаниям, написав небольшой скрипт я записал эти данные в массив array, я хочу написать цикл(?) который бы получил все ID компаний.

$ourData = file_get_contents("companys.json"); // Тут я подключил json
$array = json_decode($ourData, true); // тут я поместил это дело в массив
echo '<pre>';
var_dump($array); // Смотрю что в массиве


Получаю ответ в виде многомерных массивов:

[0]=>
  array(13) {
    ["id"]=>
    int(5286) // ВОТ ЧТО Я ХОЧУ ПОЛУЧИТЬ В ВИДЕ СПИСКА 
    ["name"]=>
    string(13) "Happy Captain"
    ["address"]=>
    string(29) "14 Panagias Myrtidiotissis st"
    ["city"]=>
    string(14) "Agios Stefanos"
    ["zip"]=>
    string(5) "14565"
    ["country"]=>
    string(6) "Greece"
    ["telephone"]=>
    string(13) "+302108004942"
    ["mobile"]=>
    string(13) "+306932908465"
    ["mobile2"]=>
    string(13) "+306936979174"
    ["vatCode"]=>
    string(11) "EL996736051"
    ["email"]=>
    string(20) "info@happycaptain.gr"
    ["web"]=>
    string(19) "www.happycaptain.gr"
    ["bankAccountNumber"]=>
    string(0) ""
  }
  [1]=>
  array(11) {
    ["id"]=>
    int(5281) // ВОТ ЧТО Я ХОЧУ ПОЛУЧИТЬ В ВИДЕ СПИСКА 
    ["name"]=>
    string(12) "Joy Yachting"
    ["address"]=>
    string(15) "Spinčićeva 2D"
    ["city"]=>
    string(5) "Split"
    ["zip"]=>
    string(5) "21000"
    ["country"]=>
    string(7) "Croatia"
    ["telephone"]=>
    string(15) "+385 98 511 165"
    ["vatCode"]=>
    string(11) "93194972815"
    ["email"]=>
    string(22) "booking@joyyachting.hr"
    ["web"]=>
    string(17) "auracatamaran.com"
    ["bankAccountNumber"]=>
    string(0) ""
  }


Если я делаю так

echo $array['0']['id']; // тут я получаю ID компании


То я получаю то что нужно, но этих компаний более 1000 штук, хочу сделать так что бы кодом (циклом?) выводило именно id всех компаний, как мне это сделать? Я в php новичок, ради интереса делаю таки вот штуки и у меня возник вопрос, как получить ID всех компаний при этом не указывать ключ массива каждый раз? )) Надеюсь все написал. Заранее спасибо!
  • Вопрос задан
  • 1285 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
ipatiev
@ipatiev Куратор тега PHP
Потомок старинного рода Ипатьевых-Колотитьевых
Все верно, циклом

После того, как освоите эту хитрую премудрость, можно будет поискать функцию, которая внутри себя выполняет цикл, и возвращает сразу нужный массив. Но только в таком порядке - сначала цикл, потом готовая функция.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
@makboriska Автор вопроса
foreach ($arrays as $array) {
		echo '<pre>';
		echo $array['id'];
	}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы