根据国家或时区获取货币PHP、Codeigniter
我想在国家的基础上获得货币,假设我在美国访问我的网页,那么我的货币应该是美元,如果我在其他地区访问我的网页,让我们假设阿联酋,那么我的货币应该是达勒姆 我不知道如何获得这样的价值,我已经尝试了所有可能的方法,比如geoip_time_zone_by_country_和_region(); geoip_region_by_name(); 可能是我没有用正确的方式得到这些。我使用PHP和codeigniter来实现它根据国家或时区获取货币PHP、Codeigniter,php,codeigniter,Php,Codeigniter,我想在国家的基础上获得货币,假设我在美国访问我的网页,那么我的货币应该是美元,如果我在其他地区访问我的网页,让我们假设阿联酋,那么我的货币应该是达勒姆 我不知道如何获得这样的价值,我已经尝试了所有可能的方法,比如geoip_time_zone_by_country_和_region(); geoip_region_by_name(); 可能是我没有用正确的方式得到这些。我使用PHP和codeigniter来实现它 货币符号 国旗 货币格式 其他自定义选项 我在我的一个正在制作的项目中使用了所有这
$geo_data = geolocation_by_ip($ip);
参考:
在我的模型中,我创建了一个函数,通过国家代码获取偏好
$data['preferences']=$this->My_Model->getPrefByCountryCode($geo_data['country_code']);
并将它们保存在数组中,然后将其发送到视图
$this->load->view('path/to/my/view',$data);
在我看来,我只是附和他们
货币格式
对于货币格式,我使用函数和中的第二个参数
setlocale(LC_MONETARY,"en_US"); // I get money_format from database
其余部分由函数完成,并呈现视图。我将符号和标志保存为图标和图像,获取它们的URL并回显它们。当然,这可能不是一个完美的方法,但它可以节省大量的研究
您可以使用以下url:
http://www.geoplugin.net/json.gp?ip="ip address here"
它将以json格式响应数据:
{
"as": "AS4755 TATA Communications formerly VSNL is Leading ISP",
"city": "Bengaluru",
"country": "India",
"countryCode": "IN",
"isp": "Tata Communications",
"lat": 12.9833,
"lon": 77.5833,
"org": "Tata Communications",
"query": "14.141.47.106",
"region": "KA",
"regionName": "Karnataka",
"status": "success",
"timezone": "Asia/Kolkata",
"zip": ""
}
只是一个建议。你可以做一个普通的功能,比较时区并根据它返回价格。我已经尝试过了,但没有任何东西能正常工作,如果你有任何与此相关的东西,或者你可以帮助举例说明,我们将不胜感激:)你是否根据国家获得了时区?是的,我有完整的时区列表,包括国家名称,但是匹配仍然不起作用,比如看看这个答案。