ホームページ  >  記事  >  バックエンド開発  >  メモリを強化する良い方法、メモを取ってください ---php がユーザーの IP アドレスと city_PHP を取得するチュートリアル

メモリを強化する良い方法、メモを取ってください ---php がユーザーの IP アドレスと city_PHP を取得するチュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:45:50847ブラウズ

知識の記憶を強化するための最も愚かで最良の方法は、メモを取ることです。今日から、PHP の作業と学習のメモを記録していきます。
1. 訪問者のIPアドレスと市外局番を取得します
1つ目は訪問者のIPアドレスを取得する機能です
関数 getRealIp() {
If (!emptyempty($_SERVER['HTTP_CLIENT_IP'])) { //共有インターネットから IP を確認します
$ip=$_SERVER['HTTP_CLIENT_IP']
} elseif (!emptyempty($_SERVER['HTTP_X_FORWARDED_FOR'])) { //IP がプロキシから渡されたことを確認するため
$ip=$_SERVER['HTTP_X_FORWARDED_FOR']
} else {
$ip=$_SERVER['REMOTE_ADDR']
}
$ip を返します。 }
IPアドレスを取得したら、www.ip138.comが提供するAPIにアクセスして都市を取得します

関数ips($ip){
$str=file_get_contents("http://www.ip138.com/ips.asp?ip={$ip}&action=2"); Preg_match("/

    (.*)
/",$str,$m); $pstr=str_replace("","",$m[1]); $arr=explode("
  • ",$pstr); array_shift($arr); $arr を返します
    }
    2. Tencent が提供する API を通じて IP と都市を取得します (注: 取得できるのはサーバーのアドレスのみで、訪問者の情報を取得するのは残念です)。
    個人的にはこの機能はとても良いと思っていますが、残念ながらサーバーの位置情報しか取得できません。

    関数 get_ip_place(){
    $ip=file_get_contents("http://fw.qq.com/ipaddress"); $ip=str_replace('"',' ',$ip);
    $ip2=explode("(",$ip);
    $a=substr($ip2[1],0,-2); $b=爆発(",",$a); $b を返します。 }
    $ip=get_ip_place(); プリント_r($ip);
    基礎知識の補足:
    $_SERVER['HTTP_CLIENT_IP']: プロキシ IP を取得します (存在する可能性があり、偽造される可能性があります)
    $_SERVER['HTTP_X_FORWARDED_FOR']: ユーザーがプロキシとして使用している IP (存在する可能性もあれば、偽造される可能性もあります。何らかの関数で取得される実際の IP アドレスは、この共通変数を使用して取得されます)
    $_SERVER['REMOTE_NAME']: アクセス端末 (ユーザーの場合もプロキシの場合もあり) IP

    著者「ボレー」




    http://www.bkjia.com/PHPjc/478646.html

    www.bkjia.com

    tru​​e
    http://www.bkjia.com/PHPjc/478646.html

    技術記事

    知識の記憶を強化するための最も愚かで最良の方法は、メモをとることです。今日から、PHP の作業と学習のメモを記録していきます。 1. 訪問者の IP アドレスと市外局番を取得します...

  • 声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。