Как записать информацию IPinfo в log.txt с помощью PHP? - PullRequest
0 голосов
/ 08 октября 2019

Я делаю простой IP-регистратор, практикующий PHP.

Прямо сейчас;Я пытаюсь использовать ipinfo для отображения информации, такой как страна, город, интернет-провайдер и т. Д. Но я сталкиваюсь с некоторыми проблемами: в своей документации они говорят мне включить мой ключ API, например так:

$ curl -u $TOKEN: ipinfo.io;` (Changed my real token to TOKEN).

И затем я пытаюсь записать детали в мой .txt следующим образом:

$ curl ipinfo.io/$ip/geo ?token=$c713a217d53757 -o log.txt;

Однако это выдаст эту ошибку:

Parse error: syntax error, unexpected 'curl' (T_STRING), expecting variable (T_VARIABLE) or '{' or '$' in /storage/ssd2/866/11131866/public_html/index.php on line 120

Пример IPinfo:

$ curl ipinfo.io/8.8.8.8/geo
{
"ip": "8.8.8.8",
"loc": "37.3859,-122.0838",
"city": "Mountain View",
"region": "California",
"country": "US"
}
# Get just the city as plaintext
$ curl ipinfo.io/8.8.8.8/city
Mountain View

До этого я использовал:

$details = json_decode(file_get_contents("http://ipinfo.io/{$ip}"));
$country = $details->country;

Чтобы получить только название страны, но, как было сказано, я хотел бы получить больше информации и мне нужен APIключ к этому.

Как я мог это сделать? И регистрировать информацию в моем log.txt так же, как я делал с другими выходными данными?

Пример:

$fh = fopen('log.txt', 'a');
fwrite($fh, 'Date/time: '."".$dateTime ."\n\n");
fwrite($fh, 'IP Address: '."".$ip ."\n");
fwrite($fh, 'Port Number: '."".$port ."\n");
fwrite($fh, 'User Agent: '."".$user_agent ."\n\n\n");
fclose($fh);

Мой полный код PHP на ideone

Я надеюсь, что кто-то может помочь мне с этой проблемой!

...