【发布时间】:2013-11-05 08:36:00
【问题描述】:
我想要做的是从 IP 地址获取国家名称。 我创建了一个名为 General 的类,在该类中我有一个名为 GetIPCountry($ip) 的函数,它从 iptolatlng.com 返回 jason 解码数组
public function GetIPCountry($ip){
$details = json_decode(file_get_contents("http://www.iptolatlng.com?`ip=".urlencode($ip)));`
return $details->countryFullName;
}
当我在本地主机中这样发送我的 ip 时:
$country = $general->GetIPCountry('***.***.***.**');
效果很好!
但是当我发送上传相同的文件并在我的服务器中运行它时,没有输出。
我想既然我在服务器上,我也应该尝试$_SERVER['REMOTE_ADDR'];,但这也没有显示任何结果。
我怀疑这也可能是服务器错误,我托管在 iPage
请帮我,
提前致谢!
【问题讨论】:
-
首先 - 您的语法有错误(在 URL 和行尾都不需要 `)。更正您的错误并发布 phpfiddle 发布的内容:([link]phpfiddle.org/main/code/b3f-gvi[/link]。然后,如果它在您的远程服务器上得到更正,并且您仍然没有输出,则可能会发生错误并且您已将 PHP 标志“display_errors”设置为 0 . 在这种情况下,请尝试将其粘贴到您的代码之前:ini_set('display_errors', 1); error_reporting(E_ALL);
-
@Kleskowy 感谢您指出,但这只是我在这里复制语法时的一个错误。我已经制作了一个 phpfile 这是链接,基本上这就是我所做的! phpfiddle.org/main/code/mih-iqn
-
@Kleskowy 实际上我将您的代码复制到了我的服务器中,但它仍然无法正常工作。即使我的代码和你的代码在小提琴中都可以正常工作,它也应该在远程服务器上工作,对吗?
标签: php ip ip-address ip-geolocation