2017-07-13 3 views
0

Ich möchte Zeitzonen von verschiedenen Benutzeranmeldungen von verschiedenen Standorten.Land und Region Name in PHP für Zeitzone von IP-Adresse

Dafür habe ich IP-Adresse in Laravel 5.4 $request->ip().

Mit json_decode(file_get_contents("http://ipinfo.io/{$ipaddr}/json")); habe ich den Namen des Landes und der Region.

Mit diesem Land und Region Name, den ich wie "Europa/London" PHP Name der Zeitzone

Mein Problem bekommen:
Für einige Standorte Region Name ist zweistellige Zahlen in dieser Funktion. Aber ich bekomme keine Zahlen. Die Zeitzone ist also null.

Ich verwende this, um Zeitzonen für die Einstellung in date_default_timezone_set(); zu erhalten.

Gibt es noch andere Möglichkeiten, Zeitzonen zu erhalten?

+0

Was erhalten Sie für diese Standorte? Längengrad Breitengrad? Land? –

+0

Hinweis: Nach dem Auftreten einiger Frustrationen, die mit der IP-Adresse zusammenhängen, kann '$ request-> ip()' ** die IP-Adresse * Ihres * Clients * nicht zurückgeben. Sie müssen nach einer anderen Methode suchen, um das zuverlässig zu ermitteln. –

+0

Beachten Sie auch, dass das Erstellen eines Landes/einer Region nicht bedeutet, dass diese erstellt werden können, um einen gültigen Zeitzonenbezeichner zu erstellen. –

Antwort

0

Verwenden Sie http://freegeoip.net/{format}/{ip} Sie können auch die Zeitzone erhalten.