登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 798|回复: 0

[PHP教程] 【PHP教程】PHP查询手机归属地

[复制链接]

444

主题

509

帖子

2051

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2051

荣誉管理论坛元老

发表于 2021-6-20 22:06:14 来自手机 | 显示全部楼层 |阅读模式 来自:
  1. <?php! M" D8 l2 p/ G9 b1 a. k% N* l
  2. /**- l2 Y" ~" M! c& f
  3. * 手机号归属地查询
      Q0 I/ K7 X$ W0 I
  4. * @author Youngxj <blog@youngxj.cn>
    2 [) Y6 V0 x$ g" @3 [
  5. * @time   2018年7月14日
    , `; P* k& _# Q4 b
  6. * @code   200->正常;201手机号不正确;202手机号无数据' K  t1 b; Y. w
  7. */) }4 A/ A; \, h* t
  8. header("Access-Control-Allow-Origin:*");
    , X4 h/ c3 _1 w# k4 [: C  p) b
  9. header('Content-type: application/json');) [/ h8 {" u4 O" w/ @. U
  10. error_reporting(0);% w; K: U8 s2 T

  11. ! b* u5 l5 \/ h  o8 o
  12. if(isset($_GET['id'])&&is_numeric($_GET['id'])){
    ) \$ ?; d8 T7 N8 Y7 ^
  13.         $id = $_GET['id'];& C4 ^$ B  i+ b% [! b( B, q& M3 |* b
  14. }else{% \2 T( I  m# m. S7 f: {3 V4 i
  15.         echo "不是正确的手机号";2 P- o' i( S2 \% T3 T! s
  16.         exit();/ o; D4 H6 P0 l2 T) r
  17. }: W1 N/ W4 w8 i* g1 v; B- F7 t/ M; V. x
  18. /*获取接口数据*/3 i/ j. ~' {4 @. i8 E6 e. W' ?6 _: u
  19. $string = httpGet('https://shouji.supfree.net/fish.asp?cat='.$id);
    ' f4 O! |  r% }2 R* ?- w& U- e% B
  20. /*编码转换*/
    * T" Q# {3 W. i9 u8 {  U/ m
  21. $string = mb_convert_encoding($string,'utf-8', 'gbk');- u  E4 j% i( P7 g$ |/ U2 o
  22. /*正则查找*/" V! I4 K+ {5 p
  23. preg_match_all('/<p>(.*)<\/p>/',$string,$str);7 T# Q" R% I* [3 t* k
  24. 9 m: \$ A; _' Q: @$ x
  25. $local = strip_tags($str[1][0]);( g1 @! `( o4 t& y2 M, P
  26. $duan = strip_tags($str[1][1]);
    , d; c; c) N, d  g$ \. a
  27. $type = strip_tags($str[1][2]);
    . q( W6 X4 Z, K, M  [4 w4 l
  28. $yys = strip_tags($str[1][3]);
    8 b- i: X0 c! B7 X) C
  29. $bz = strip_tags($str[1][5]);
      r: e; \" w  A
  30. $id = $_GET['id'];$ J3 P- Z+ r8 @8 T2 S6 N9 W
  31. $msg = $_GET['msg'];7 X! R' a. p; j4 _
  32. if($msg==null && $local!=''){
    : m$ l/ J) g: T4 p" c" j- U* W
  33. echo "手机号:$id\n$local\n$duan\n$type\n$yys\n$bz";7 k1 i+ x5 p* W% F8 A  [8 z
  34. }elseif($msg==json && $local!=''){0 Q4 n" t0 H7 D- V1 T2 ~) ^
  35.         echo json_encode(array('code'=>'200','id'=>$id,'local'=>$local,'duan'=>$duan,'type'=>$type,'yys'=>$yys,'bz'=>$bz));
    : j2 P" A' |9 R5 c- S
  36. }else{
    8 u7 R/ ]+ X# j% Y! m$ n
  37.         echo "手机号:$id\n该手机号无数据";1 d$ M8 x2 G: V5 ~
  38.         exit();/ X) k+ P3 B0 \- h$ `
  39. }
    ' z; S% F2 X/ @# \2 ^, }4 v8 b
  40. : [* ~5 B! A7 _' ~
  41. function httpGet($a, $b = '', $c = '', $d = ''){
    . D) s6 w0 P2 W: X7 h* m
  42.         /*curl模拟get请求*/' Q- P5 `; b' @2 _
  43.         $e = curl_init();3 D3 Q( ]0 G& F  W# N3 m
  44.         $f = mt_rand(11, 191) . "." . mt_rand(0, 240) . "." . mt_rand(1, 240) . "." . mt_rand(1, 240);# M  u, E0 w  S" u. d5 @, F& T9 f8 b+ H
  45.         $i[] = "CLIENT-IP:" . $f;
    # d6 v3 ]- H, [. d: |9 ?$ J/ d/ c
  46.         $i[] = "X-FORWARDED-FOR:" . $f;2 ]: y# L7 ]$ v2 E5 b/ [1 W
  47.         $i[] = "User-agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11";" m: @* m/ a9 S' ~
  48.         $i[] = "X-Requested-With: XMLHttpRequest";5 B2 x9 i. B4 V& Y
  49.         if (!empty($d)) {/ W" q0 a. o% a# J
  50.                 $i[] = "Cookie: " . $d;8 A* ?8 T& Q( @
  51.         }
    ' L+ F  l3 G+ i* T
  52.         curl_setopt($e, CURLOPT_HTTPHEADER, $i);
    # @  r  e  e$ E& N: G  P$ G
  53.         curl_setopt($e, CURLOPT_RETURNTRANSFER, true);
    ( @6 T' E, U- g6 m0 j4 a9 U! f) j
  54.         curl_setopt($e, CURLOPT_TIMEOUT, 180);2 p9 }* |) f6 t! B
  55.         curl_setopt($e, CURLOPT_SSL_VERIFYPEER, false);
    * y! {6 ]7 w0 y- t: m! u8 p
  56.         curl_setopt($e, CURLOPT_SSL_VERIFYHOST, false);# a7 P/ V* Y3 q/ p
  57.         if (!empty($c)) {
    ) Q9 o1 g2 ?1 F2 a
  58.                 curl_setopt($e, CURLOPT_REFERER, $c);
    7 ~5 ?, y2 j, O2 X
  59.         }
    & u2 @7 E8 j2 }, g8 q5 Y
  60.         if (!empty($b)) {
    " x# o- q3 N- O# H4 [, w
  61.                 curl_setopt($e, CURLOPT_POST, 1);
    * {. W  Z1 ?+ u# w! ]1 i
  62.                 curl_setopt($e, CURLOPT_POSTFIELDS, $b);
    ( L" S% P* v* Q/ p: ]5 N2 \( V
  63.         }
    ) S/ B9 J/ j& x6 }
  64.         curl_setopt($e, CURLOPT_URL, $a);
    : G' t  g9 M1 Q4 g& i3 O4 R
  65.         curl_setopt($e, CURLOPT_ENCODING, "gzip");
    / J, ]; U) L! m' j! H
  66.         $j = curl_exec($e);
    6 }* U! G' }6 B
  67.         curl_close($e);
    ( D* u* L2 K5 W5 k- g
  68.         return $j;4 }( l$ d# m& b4 z
  69. }
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|星空社区 |网站地图

GMT+8, 2024-4-29 19:42 , Processed in 0.053287 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表