Jump to content
View in the app

A better way to browse. Learn more.

IPBMafia.ru - поддержка Invision Community, релизы, темы, плагины и приложения

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

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

Featured Replies

Posted

Какой встроенной функцией в 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, конечно же...

  • Author

как правило фреймворки имеют свои "оболочки" нативных функций пхп
или какие-то библиотечки, типа 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>

 

  • Author
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" ищите.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.