💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
`~~~ /** * 根据用户IP获取用户地理位置 * $ip 用户ip */ public function get_position($ip){ if(empty($ip)){ return '缺少用户ip'; } $url = 'http://ip.taobao.com/service/getIpInfo.php?ip='.$ip; $ipContent = file_get_contents($url); $ipContent = json_decode($ipContent,true); return $ipContent; } /** * 用户设备类型 * @return string */ public static function clientOS() { $agent = strtolower($_SERVER['HTTP_USER_AGENT']); if(strpos($agent, 'windows nt')) { $platform = 'windows'; } elseif(strpos($agent, 'macintosh')) { $platform = 'mac'; } elseif(strpos($agent, 'ipod')) { $platform = 'ipod'; } elseif(strpos($agent, 'ipad')) { $platform = 'ipad'; } elseif(strpos($agent, 'iphone')) { $platform = 'iphone'; } elseif (strpos($agent, 'android')) { $platform = 'android'; } elseif(strpos($agent, 'unix')) { $platform = 'unix'; } elseif(strpos($agent, 'linux')) { $platform = 'linux'; } else { $platform = 'other'; } return $platform; } /** * 判断请求是否是移动端 * @return bool */ public static function isMobile() { $user_agent = $_SERVER['HTTP_USER_AGENT']; $mobile_agents = array ('iphone','android','phone','mobile','wap','netfront','java','opera mobi', 'opera mini','ucweb','windows ce','symbian','series','webos','sony','blackberry','dopod', 'nokia','samsung','palmsource','xda','pieplus','meizu','midp','cldc','motorola','foma', 'docomo','up.browser','up.link','blazer','helio','hosin','huawei','novarra','coolpad', 'techfaith','alcatel','amoi','ktouch','nexian','ericsson','philips','sagem','wellcom', 'bunjalloo','maui','smartphone','iemobile','spice','bird','zte-','longcos','pantech', 'gionee','portalmmm','jig browser','hiptop','benq','haier','^lct','320x320','240x320', '176x220','windows phone','cect','compal','ctl','lg','nec','tcl','daxian','dbtel','eastcom', 'konka','kejian','lenovo','mot','soutec','sgh','sed','capitel','panasonic','sonyericsson', 'sharp','panda','zte','acer','acoon','acs-','abacho','ahong','airness','anywhereyougo.com', 'applewebkit/525','applewebkit/532','asus','audio','au-mic','avantogo','becker','bilbo', 'bleu','cdm-','danger','elaine','eric','etouch','fly ','fly_','fly-','go.web','goodaccess', 'gradiente','grundig','hedy','hitachi','htc','hutchison','inno','ipad','ipaq','ipod', 'jbrowser','kddi','kgt','kwc','lg ','lg2','lg3','lg4','lg5','lg7','lg8','lg9','lg-','lge-', 'lge9','maemo','mercator','meridian','micromax','mini','mitsu','mmm','mmp','mobi','mot-', 'moto','nec-','newgen','nf-browser','nintendo','nitro','nook','obigo','palm','pg-', 'playstation','pocket','pt-','qc-','qtek','rover','sama','samu','sanyo','sch-','scooter', 'sec-','sendo','sgh-','siemens','sie-','softbank','sprint','spv','tablet','talkabout', 'tcl-','teleca','telit','tianyu','tim-','toshiba','tsm','utec','utstar','verykool','virgin', 'vk-','voda','voxtel','vx','wellco','wig browser','wii','wireless','xde','pad','gt-p1000'); $ismobile = false; foreach ($mobile_agents as $device) { if (stristr($user_agent, $device)) { $ismobile = true; break; } } return $ismobile; } ~~~`