php如何区分私网与公网?

指定的网络为私网 除外都为公网 如何区分 做过类似需求有经验的大神 麻烦知道一下

阅读 2.9k
3 个回答

判断 ip 不行么 ?
为啥要区分。

首先可以确定的是内网ip是以127.,10.,192.168.,172.开头的,所以很容易区分内外网的ip。

/*
    区分是否是内网ip
    @param $ip string IP
    @return bool true/false
*/
function isLocal($ip){        
    return preg_match('%^127\.|10\.|192\.168|172\.(1[6-9]|2|3[01])%',$ip);
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏