alexbruni
@alexbruni

Как занести данные из массива PHP в переменные?

Здравствуйте! Ни разу не сталкивался с массивом в PHP...

Вот это:
var_export($SxGeo->getCityFull($ip)); // Вся информация о городе


Выводит информацию о городе:
array ( 'city' => array ( 'id' => 520555, 'lat' => 56.32867, 'lon' => 44.00205, 'name_ru' => 'Нижний Новгород', 'name_en' => 'Nizhniy Novgorod', 'okato' => '22401', ), 'region' => array ( 'id' => 559838, 'lat' => 56, 'lon' => 45, 'name_ru' => 'Нижегородская область', 'name_en' => 'Nizhegorodskaya Oblast\'', 'iso' => 'RU-NIZ', 'timezone' => 'Europe/Moscow', 'okato' => '22', ), 'country' => array ( 'id' => 185, 'iso' => 'RU', 'continent' => 'EU', 'lat' => 60, 'lon' => 100, 'name_ru' => 'Россия', 'name_en' => 'Russia', 'timezone' => 'Europe/Moscow', ), )


Как разделить информацию в переменные? Например так, что бы например переменная $name_ru выводила "Нижний Новгород"?
  • Вопрос задан
  • 4632 просмотра
Решения вопроса 2
PafNutY
@PafNutY
Люблю кодить в своё удовольствие
Не совсем понятна цель перегона массива в переменные, ведь можно использовать так:
$arr = $SxGeo->getCityFull($ip);
echo $arr['city']['name_ru'];
Ответ написан
Quber
@Quber
PHP Team lead
Самый простой способ
<?php

$array = $SxGeo->getCityFull($ip);
echo $array["country"]["name_ru"];

?>
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
IgorO2
@IgorO2
73
Используйте функцию extract()

Пример из php.net/manual/ru/function.extract.php
<?php

/* Предположим, что $var_array - это массив, полученный в результате
   wddx_deserialize */

$size = "large";
$var_array = array("color" => "blue",
                   "size"  => "medium",
                   "shape" => "sphere");
extract($var_array, EXTR_PREFIX_SAME, "wddx");

echo "$color, $size, $shape, $wddx_size\n";

?>
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы