当前访问用户地域显示 PHP 方法,打开/include/extend.func.php,在最下面增加一下代码。采用百度的 API 接口,其他还有新浪、淘宝的,但测试后都失效了,由于接口经常变化,本例子也无法保证该接口长期有效。另外一些新的 IP 并未进入该接口的 IP 库,可能也显示不出,系统会慢慢补充:
//获取用户IP function check_address($ip){ if(empty($ip)){ return '缺少用户ip'; } $url = 'https://sp0.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?query='.$ip.'&co=&resource_id=6006&t=&ie=utf8&oe=gbk&cb=op_aladdin_callback&format=json&tn=baidu&cb=&_='; //调用了百度接口 $str = file_get_contents($url); //获取返回内容 $encode = mb_detect_encoding($str, array("ASCII",'UTF-8',"GB2312","GBK",'BIG5')); $str = mb_convert_encoding($str, 'UTF-8', $encode); //转化编码 $str=json_decode($str); //转换为json类型 $str=$str->data[0]->location; //取出数据 return $str; }
模板调用方法如下,如果调用失效,找到系统设置 -> 其他设置 -> 模板引擎禁用标签,删除 PHP 保存即可:
{dede:php} $str=check_address(GetIp());//GetIP()为当前访问用户的真实IP(xxx.xxx.xxx.xxx),输入结果为“广东省珠海市 中国移动” $t1 = mb_strpos($str,'');//从结果中的第一个字符开始 $t2 = mb_strpos($str,'市 ');//从'市'左侧结束,当然可以保留该字符,从空格左侧开始,如' ' echo $s = mb_substr($str,$t1,$t2-$t1); //输出结果为“广东省珠海” {/dede:php}
文章标题:DedeCMS 显示当前访问用户地区PHP调用方法
文章链接:https://resource.zyuanzhan.com/3431.html
更新时间:2021年11月11日
✅ 本站资源全部来自互联网收集,仅供用于学习和交流,请勿用于商业用途。
✅ 资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持。
✅ 本站大部分内容均收集于网络!若内容若侵犯到您的权益,请留言至:问题提交,我们将第一时间处理。
✅ 如若发现资源下载链接失效,请留言至:资源补档 处进行反馈,我们将及时处理。
✅ 为了避免不必要的交易纷争,购买前请务必阅读:免责声明。如您介意,请勿下载本站资源!!!