GEO IP 无法在 Codeigniter 框架中运行
Posted
技术标签:
【中文标题】GEO IP 无法在 Codeigniter 框架中运行【英文标题】:GEO IP can't run in Codeigniter Framework 【发布时间】:2014-12-28 15:50:47 【问题描述】:我遇到了一个问题,if-else 不起作用。这是代码。
$ip = $_SERVER['REMOTE_ADDR']; //ip is - 182.48.65.4
$adsmanager = file_get_contents("http://ipinfo.io/$ip/country");
//adsmanager result: BD
if($adsmanager == "BD")
echo '1. This is Bangladesh';
else
echo '2. This is USA';
但运行后输出为“2。这是美国”
什么时候改
if($adsmanager == "US")
echo '1. This is Bangladesh';
else
echo '2. This is USA';
输出是“2。这是美国”
有什么问题?我不明白。
【问题讨论】:
$adsmanager 返回BD
额外空间。如果您打印出$adsmanager 的长度,它将输出3。这就是为什么与BD
比较不起作用的原因。看看@riad 的回答。
【参考方案1】:
使用trim()
函数...然后你的匹配将起作用。因为页面返回带有输出的换行符。
if(trim($adsmanager) == "BD")
echo '1. This is Bangladesh';
else
echo '2. This is USA';
【讨论】:
以上是关于GEO IP 无法在 Codeigniter 框架中运行的主要内容,如果未能解决你的问题,请参考以下文章
fsockopen(): 无法连接到远程服务器 ip Codeigniter