ホームページ  >  記事  >  バックエンド開発  >  PHPがIPアドレスを取得して配列として出力するプログラムコード_PHPチュートリアル

PHPがIPアドレスを取得して配列として出力するプログラムコード_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:48:02990ブラウズ

phpでIPアドレスを取得する方法はたくさんありますが、以下では、Linuxコマンドを使用してIPアドレスを取得し、それを配列に変換して出力する方法を紹介します。また、phpのIPアドレス処理の一般的な例もいくつか紹介します。

PHP サーバーの IP アドレスを取得

PHP を使用して ifconfig を実行し、Linux サーバーの IP を取得し、配列として出力します。コードは次のとおりです。

コードは次のとおりですコードをコピー
function getServerIp(){ // ifconfig を使用してサーバー IP を読み取り、配列として出力します
$ss = exec('/sbin/ifconfig | sed -n 's/^ *.*addr:([0-9.]{7,}) .*$/1/p'',$arr);
$arr を返します
}
$ips=getServerIp();

foreach($ips as $k=>$v){//IP をフィルタリングします
if(substr($v,0,3)=='127' || substr($v,0,3)=='10.' || substr($v,0,7)=='192.168' | | substr($v,0,6)=='172.16'){
unset($ips[$k]);
}
}
shuffle($ips);//並べ替え
print_r($ips);
?>

phpでIPアドレスを取得する例

コードは次のとおりですコードをコピー
関数 GetIP(){
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$cip = $_SERVER["HTTP_CLIENT_IP"];
}
elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
$cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
elseif(!empty($_SERVER["REMOTE_ADDR"])){
$cip = $_SERVER["REMOTE_ADDR"];
}
他{
$cip = "取得できません!";
}
$cip を返します;
}
エコーGetIP();
?>

ユーザーの IP アドレスを取得する比較的一般的な方法は次のとおりです:

コードは次のとおりですコードをコピー関数 get_user_ip() {
If (isset($_SERVER['HTTP_CLIENT_IP']) && $_SERVER['HTTP_CLIENT_IP']!='unknown') {
$ip = $_SERVER['HTTP_CLIENT_IP']
elseif (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR']!='unknown') {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR']; } else {
$ip = $_SERVER['REMOTE_ADDR']; }

$ip を返します。 }


PHP で IP の場所を取得します (Sina API を呼び出して IP の場所を取得します)

コードは次のとおりです コードをコピー
関数 get_location($ip){
$curl =curl_init();
curl_setopt($curl,CURLOPT_URL, "http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip);
$location =curl_exec($curl);
$location = json_decode($location);
if($location===FALSE) return "";
empty($location->desc) を返しますか? $location->province.$location->city.$location->district.$location->isp : $location->desc;
}

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632798.html技術記事 php で IP アドレスを取得するには、さまざまな方法があります。以下では、Linux コマンドを使用して IP アドレスを取得し、それを配列に変換して出力する方法を紹介します。また、php の IP アドレス処理の一般的な例もいくつか紹介します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。