1234567891011121314151617181920212223242526272829303132333435363738394041 |
- <?php
- /**
- * lemocms
- * ============================================================================
- * 版权所有 2018-2027 lemocms,并保留所有权利。
- * 网站地址: https://www.lemocms.com
- * ----------------------------------------------------------------------------
- * 采用最新Thinkphp6实现
- * ============================================================================
- * Author: yuege
- * Date: 2019/9/26
- */
- namespace lemo\helper;
- class IpHelper
- {
- public static function is_ip($str)
- {
- $ip = explode('.', $str);
- for ($i = 0; $i < count($ip); $i++) {
- if ($ip[$i] > 255) {
- return false;
- }
- }
- return preg_match('/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/', $str);
- }
- public static function ip(){
- $ip='未知IP';
- if(!empty($_SERVER['HTTP_CLIENT_IP'])){
- return is_ip($_SERVER['HTTP_CLIENT_IP'])?$_SERVER['HTTP_CLIENT_IP']:$ip;
- }elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
- return is_ip($_SERVER['HTTP_X_FORWARDED_FOR'])?$_SERVER['HTTP_X_FORWARDED_FOR']:$ip;
- }else{
- return is_ip($_SERVER['REMOTE_ADDR'])?$_SERVER['REMOTE_ADDR']:$ip;
- }
- }
- }
|