https://github.com/kielabokkie/ipdata-php
Get IP address information using the ipdata.co API.
https://github.com/kielabokkie/ipdata-php
geolocation geolocation-api ipdata php
Last synced: 9 months ago
JSON representation
Get IP address information using the ipdata.co API.
- Host: GitHub
- URL: https://github.com/kielabokkie/ipdata-php
- Owner: kielabokkie
- License: mit
- Created: 2018-03-15T22:46:28.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2020-09-16T09:38:42.000Z (over 5 years ago)
- Last Synced: 2025-03-23T21:23:17.564Z (10 months ago)
- Topics: geolocation, geolocation-api, ipdata, php
- Language: PHP
- Homepage:
- Size: 38.1 KB
- Stars: 5
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Ipdata client library for PHP
[](https://twitter.com/kielabokkie)
[](https://packagist.org/packages/kielabokkie/ipdata)
[](LICENSE)
Get IP address information the using the [ipdata.co](https://ipdata.co) API. If you are using Laravel, check out [kielabokkie/laravel-ipdata](https://github.com/kielabokkie/laravel-ipdata).
## Prerequisites
Ipdata has a free plan that allows you to make 1,500 requests per day and paid plans if you need more than that. All plans need an API key and you'll have to register on their [website](https://ipdata.co/pricing.html) to get one.
## Installation
You can install the package via composer:
composer require kielabokkie/ipdata
## Usage
### Lookup of the calling IP address
Please note that when you instantiate the Ipdata class you have to pass your API key as a parameter.
```
$ipdata = new \Kielabokkie\Ipdata('yourapikey');
$res = $ipdata->lookup();
```
### Lookup a specific IP address
```
$ipdata = new \Kielabokkie\Ipdata('yourapikey');
$res = $ipdata->lookup('1.1.1.1');
```
The Ipdata API will return the following data:
```json
{
"ip": "1.1.1.1",
"is_eu": false,
"city": "Research",
"region": "Victoria",
"region_code": "VIC",
"country_name": "Australia",
"country_code": "AU",
"continent_name": "Oceania",
"continent_code": "OC",
"latitude": -37.7,
"longitude": 145.1833,
"asn": "AS13335",
"organisation": "Cloudflare Inc",
"postal": "3095",
"calling_code": "61",
"flag": "https://ipdata.co/flags/au.png",
"emoji_flag": "🇦🇺",
"emoji_unicode": "U+1F1E6 U+1F1FA",
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "Australian Dollar",
"code": "AUD",
"symbol": "AU$",
"native": "$",
"plural": "Australian dollars"
},
"time_zone": {
"name": "Australia/Melbourne",
"abbr": "AEST",
"offset": "+1000",
"is_dst": false,
"current_time": "2018-06-20T11:41:23.068040+10: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
}
}
```
This library will run the response through a json_decode giving you an easy object to work with, for example:
```php
echo $res->country_name; // Australia
echo $res->flag; // https://ipdata.co/flags/au.png
```