最近项目需要获取实时汇率,网上很多的API接口,要么收费,要么繁琐。
我这里直接使用的是中国银行的实时数据,分享给大家,有需要用到的,拿走不谢
废话不多说,直接上代码
$name为货币 比如 英镑
function exchange($name) {
$date = date("Y-m-d", time());
$data = file_get_contents("https://srh.bankofchina.com/search/whpj/search_cn.jsp?erectDate=".$date."¬hing=".$date."&pjname=".$name);
$data = str_replace(array(" ", "\r", "\n", "\t"), "", $data);
preg_match('/<tr>[\s]*<td>'.$name.'<\/td>[\s]*<td>[\s|\S]*<\/td>[\s]*<\/tr>/', $data, $converted);
$data = str_replace("</tr><tr>", ";", $converted[0]);
$data = str_replace(array("<tr>", "</tr>"), "", $data);
$data = str_replace("</td><td>", ",", $data);
$data = str_replace(array("<td>", "</td>"), "", $data);
$rateList = explode(";", $data);
$rate = explode(",", $rateList[0]);
//$rate [0] 国家 [1] 现汇买入价 [2]现钞买入价[3]现汇卖出价[4]现钞卖出价[5]外管局中间价[6]中行折算价
$rate = $rate[3];
$rate = ($rate / 100);
if (is_numeric($rate))
return $rate;
else
return false;
}