我想在国家的基础上获得货币,假设我在美国访问我的网页然后我的货币应该是美元,如果我在其他地区访问我的页面,我们假设阿联酋我的货币应该在达勒姆。
我很困惑如何获得这样的价值,我已经尝试了所有可行的方式,例如geoip_time_zone_by_country_and_region(); geoip_region_by_name(); 可能是我没有以正确的方式得到这些。我是通过使用PHP和codeigniter来实现的。
答案 0 :(得分:0)
我在我正在制作的一个项目中使用了所有这些,我可以与你分享。
<强>步骤1 强>
我正在使用一个首选项表,我在其中保存这样的设置
<强>步骤-2 强>
在我的控制器中,我通过IP获取国家/地区并将代码保存在变量
中$geo_data = geolocation_by_ip($ip);
在我的模型中,我创建了一个通过国家/地区代码获取偏好的功能
$data['preferences']=$this->My_Model->getPrefByCountryCode($geo_data['country_code']);
并将它们保存在数组中,然后将其发送到视图
$this->load->view('path/to/my/view',$data);
在我看来,我只是回应他们
货币格式
对于货币格式,我使用PHP money_format()函数和
中的第二个参数setlocale(LC_MONETARY,"en_US"); // I get money_format from database
其余部分由函数完成,并呈现视图。我将符号和标志保存为图标和图像,获取其网址并回显它们。当然,这可能不是一个完美的方式,但它可以节省大量的研究
答案 1 :(得分:0)
你可以使用这个网址:
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": "" }