Client IP detector and various IP validators
composer require dimchtz/clientip
$client = new DimChtz\ClientIP\ClientIP();
You can also add additional IP services (for the external IP detection functionality):
$client = new DimChtz\ClientIP\ClientIP(array(
'http://v4.ident.me/',
'http://checkip.amazonaws.com/',
'http://ipecho.net/plain',
));
$client = new DimChtz\ClientIP\ClientIP();
echo 'Visitor\'s IP: ' . $client->get_ip(false);
By default get_ip()
will return the external IP if the user is on localhost.
$client = new DimChtz\ClientIP\ClientIP();
echo 'Visitor\'s IP: ' . $client->get_ip();
$client = new DimChtz\ClientIP\ClientIP();
echo 'Visitor\'s external IP: ' . $client->get_external_ip();
$client = new DimChtz\ClientIP\ClientIP();
echo $client->is_localhost() ? 'It is localhost' : 'It is not localhost';
echo DimChtz\ClientIP\ClientIP::is_valid_ip('192.168.56.23') ? 'It is valid IP' : 'It is not valid IP';
echo DimChtz\ClientIP\ClientIP::is_valid_ipv4('192.168.56.23') ? 'It is valid IPv4' : 'It is not valid IPv4';
echo DimChtz\ClientIP\ClientIP::is_valid_ipv6('::1') ? 'It is valid IPv6' : 'It is not valid IPv6';