Перейти к содержанию

json местоположение


Рекомендуемые сообщения

Какой встроенной функцией в IPS можно вот это

[location] => {"lat":null,"long":null,"addressLines":[null],"city":"\u0412\u043e\u043b\u0433\u043e\u0433\u0440\u0430\u0434","region":"\u0412\u043e\u043b\u0433\u043e\u0433\u0440\u0430\u0434\u0441\u043a\u0430\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u044c","country":"RU","postalCode":""}

превратить в строку типа 

Цитата

Воронеж, Воронежская область, Россия

Спасибо

Ссылка на комментарий
Поделиться на другие сайты

$location = json_decode( '{"lat":null,"long":null,"addressLines":[null],"city":"\u0412\u043e\u043b\u0433\u043e\u0433\u0440\u0430\u0434","region":"\u0412\u043e\u043b\u0433\u043e\u0433\u0440\u0430\u0434\u0441\u043a\u0430\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u044c","country":"RU","postalCode":""}', TRUE );
echo $location['city'];

 

Ссылка на комментарий
Поделиться на другие сайты

Спасибо, но мимо.
Внимательно прочитайте, что мне нужно.

Ссылка на комментарий
Поделиться на другие сайты

Нет никаких "встроенных функций IPS" для этого нет, уважаемый. Есть нативные функции PHP. Внимательно читать то, что вам нужно - моя святая обязанность!

Что вам действительно нужно, так это хотя бы точно знать - чего именно вы хотите. Ну и RTFM, конечно же...

Ссылка на комментарий
Поделиться на другие сайты

как правило фреймворки имеют свои "оболочки" нативных функций пхп
или какие-то библиотечки, типа Carbon для времени/даты

может geoip? я могу конечно пройтись по этому объекту и собрать нативными функциями нужную мне конечную адресную строку
но не вдавался я в geoip сильно... может есть что-то geoip_get_address($json), где $json - это мой объект выше?

Ссылка на комментарий
Поделиться на другие сайты

Вы не внятно описываете задачу. Что за объект? Где вы хотите получить свою строку, в шаблоне IPS? Тогда решение будет выглядеть примерно так:

{{$location = json_decode( $my_obj->geo['location'], TRUE );}}
<div>{$location['city']}, {$location['region']}, {$location['country']}</div>

 

Ссылка на комментарий
Поделиться на другие сайты

23 часа назад, demvlg сказал:

"country":"RU"

а надо Россия...
хорошо, есть кастом филд типа адрес
для записи базы данных в отображении доступна переменная $address, которая выглядит в итоге как

23 часа назад, demvlg сказал:

Воронеж, Воронежская область, Россия

но в базе нет слова "Россия".
каким то методомв в фреймворке/нативной геофункцией оно вытягивается
 

я дополняю блок событий календаря
у события можно указать местоположение
но в стандартной верстке нет вывода этого поля
ия хз как его вывести
$event-> ?
 

Ссылка на комментарий
Поделиться на другие сайты

print_r( \IPS\GeoLocation::buildFromJson('{"lat":null,"long":null,"addressLines":[null],"city":"\u0412\u043e\u043b\u0433\u043e\u0433\u0440\u0430\u0434","region":"\u0412\u043e\u043b\u0433\u043e\u0433\u0440\u0430\u0434\u0441\u043a\u0430\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u044c","country":"RU","postalCode":""}')->toString( ', ' ) );exit;

 

Ссылка на комментарий
Поделиться на другие сайты

В базе всё есть естественно, если у вас в строке "Russian Federation", то ищите это значение в языковом пакете и переводите как вам нужно. Или по ключу "country-RU" ищите.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...