云南網站建設創新企業 昆明多彩網絡公司

|網頁對話|電話:0871-63215311

php實現國際匯率兌換接口

來源:昆明多彩網絡公司 日期:2011-04-10 閱讀: 發表評論

國際每日匯率都在更新,每日當中也會有多匯率,在一些英文站中就需要實現隨時更新匯率達到貨幣即時換算的目的。

 首先介紹一個網站:http://xurrency.com/,該網站是目前大家用的最多的匯率換算網站,查詢出來的結果權威準確無誤。

它們有提供匯率換算api,地址是http://xurrency.com/api,只需要將該網址改成類似這樣的:http://xurrency.com/api/usd/cny/1即可得到匯率轉換后的結果。返回結果如:{"result":{"updated_at":"2011-04-08T19:10:00Z","value":6.5363,"target":"cny","base":"usd"},"code":0,"status":"ok"},是json格式,可以給php和js共用。但是該api的免費版本有一個限制,就是一個ip單日之內只能查詢10次,超出10次就需要購買商業授權才行,授權的key寫在網址后面即可,對于一個商業網站來說一天查詢10次肯定不行的,所以此路不通。

http://xurrency.com/在自身網站上提供了免費查詢的功能,但是查詢結果并不是api的形式,所以我們需要加工一下才能提供給我們自己的網站使用。主要使用了php中的file_get_contents函數和正則過濾功能。

<?php
$Amount = $_GET['Amount'];
$to = $_GET['to'];
$url = "http://www.xe.com/ucc/convert.cgi?Amount=$Amount&From=CNY&To=$to";
$content = file_get_contents($url);
$regex = "/class=\"rate\" >(.+?) ".$to."/i"; //正則表達式.
if(preg_match_all($regex, $content, $matches)) {
echo $Amount.' CNY = '.$matches[1][0].' '.$to;
}
?>

Amount為金額數量,to為目標貨幣的代號,From=CNY中的CNY為人民幣的代號,這里是直接寫死在了網址后面的參數上。通過正則將查詢出來的結果過濾到我們想要的結果,然后呈現出來。目標達到。

網站制作的時候php的file_get_contents函數和正則功能可以將幾乎所有網站的結果處理成我們想要的效果,弊端是需要考慮到另外一個網站的網速,同時如果服務器總是頻繁讀取另外一個網站數據的話可能會導致服務器ip被封,在沒有必要的時候,可以采用數據庫或者cookie結合來做,盡量減少讀取外部網站的頻率。
 

發表評論評論列表(有 條評論)

網頁對話 0871-63215311
原创视频传到什么网站可以赚钱 管家婆今期免费资料 平安银行股票 安徽十一选五今天预测 上市公司股票代码查 二分钟时时彩 好用的股票配资平台 pk10赛车6码345678公式 福彩广东36选7 捕鱼欢乐弹头买卖微信 pk10官网下载