Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PHP Extension) ipdata.co IPv4 Geolocation LookupDemonstrates how to lookup Geolocation data for an IPv4 address using the ipdata.co API.
<?php // The version number (9_5_0) should match version of the Chilkat extension used, omitting the micro-version number. // For example, if using Chilkat v9.5.0.48, then include as shown here: include("chilkat_9_5_0.php"); // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. $http = new CkHttp(); $jsonStr = $http->quickGetStr('https://api.ipdata.co/149.250.207.170?api-key=MY_API_KEY'); if ($http->get_LastMethodSuccess() == false) { print $http->lastErrorText() . "\n"; exit; } $json = new CkJsonObject(); $json->put_EmitCompact(false); $success = $json->Load($jsonStr); print $json->emit() . "\n"; // Sample output: // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON // { // "ip": "149.250.207.170", // "is_eu": true, // "city": null, // "region": null, // "region_code": null, // "country_name": "Germany", // "country_code": "DE", // "continent_name": "Europe", // "continent_code": "EU", // "latitude": 51.2993, // "longitude": 9.491, // "asn": "AS15854", // "organisation": "EntServ Deutschland GmbH", // "postal": null, // "calling_code": "49", // "flag": "https://ipdata.co/flags/de.png", // "emoji_flag": "\ud83c\udde9\ud83c\uddea", // "emoji_unicode": "U+1F1E9 U+1F1EA", // "languages": [ // { // "name": "German", // "native": "Deutsch" // } // ], // "currency": { // "name": "Euro", // "code": "EUR", // "symbol": "\u20ac", // "native": "\u20ac", // "plural": "euros" // }, // "time_zone": { // "name": "Europe/Berlin", // "abbr": "CEST", // "offset": "+0200", // "is_dst": true, // "current_time": "2019-04-20T23:54:30.715507+02:00" // }, // "threat": { // "is_tor": false, // "is_proxy": false, // "is_anonymous": false, // "is_known_attacker": false, // "is_known_abuser": false, // "is_threat": false, // "is_bogon": false // }, // "count": "2" // } $ip = $json->stringOf('ip'); $is_eu = $json->BoolOf('is_eu'); $city = $json->stringOf('city'); $region = $json->stringOf('region'); $region_code = $json->stringOf('region_code'); $country_name = $json->stringOf('country_name'); $country_code = $json->stringOf('country_code'); $continent_name = $json->stringOf('continent_name'); $continent_code = $json->stringOf('continent_code'); $latitude = $json->stringOf('latitude'); $longitude = $json->stringOf('longitude'); $asn = $json->stringOf('asn'); $organisation = $json->stringOf('organisation'); $postal = $json->stringOf('postal'); $calling_code = $json->stringOf('calling_code'); $flag = $json->stringOf('flag'); $emoji_flag = $json->stringOf('emoji_flag'); $emoji_unicode = $json->stringOf('emoji_unicode'); $currencyName = $json->stringOf('currency.name'); $currencyCode = $json->stringOf('currency.code'); $currencySymbol = $json->stringOf('currency.symbol'); $currencyNative = $json->stringOf('currency.native'); $currencyPlural = $json->stringOf('currency.plural'); $time_zoneName = $json->stringOf('time_zone.name'); $time_zoneAbbr = $json->stringOf('time_zone.abbr'); $time_zoneOffset = $json->stringOf('time_zone.offset'); $time_zoneIs_dst = $json->BoolOf('time_zone.is_dst'); $time_zoneCurrent_time = $json->stringOf('time_zone.current_time'); $threatIs_tor = $json->BoolOf('threat.is_tor'); $threatIs_proxy = $json->BoolOf('threat.is_proxy'); $threatIs_anonymous = $json->BoolOf('threat.is_anonymous'); $threatIs_known_attacker = $json->BoolOf('threat.is_known_attacker'); $threatIs_known_abuser = $json->BoolOf('threat.is_known_abuser'); $threatIs_threat = $json->BoolOf('threat.is_threat'); $threatIs_bogon = $json->BoolOf('threat.is_bogon'); $count = $json->stringOf('count'); $i = 0; $count_i = $json->SizeOfArray('languages'); while ($i < $count_i) { $json->put_I($i); $name = $json->stringOf('languages[i].name'); $native = $json->stringOf('languages[i].native'); $i = $i + 1; } ?> |
© 2000-2023 Chilkat Software, Inc. All Rights Reserved.