Geçenlerde aynı şeyi uyguladım, ancak Google'ın API'sini kullanarak. Sorgu URL'si şuna benzer:
http://www.google.com/ig/calculator?hl=en&q=1GBP=?USD
3 parametre alır. İlk parametre tutar, ardından dönüştürdüğünüz ISO 4217 para birimi kodu, eşittir işareti ve soru işareti ve dönüştürdüğünüz para birimi kodudur. Google'ın desteklediği kodların bir listesini burada bulabilirsiniz . Sorguya verilen yanıt şöyle görünecektir:
{lhs: "1 British pound",rhs: "1.6132 U.S. dollars",error: "",icc: true}
Bu oldukça açıklayıcı, bu yüzden burada ayrıntılara girmeyeceğim. Sorgu yanıtını şu şekilde ele aldım:
function convert_currency($amount, $from_code, $to_code){
ini_set('max_execution_time', 60);
$temp = 'http://www.google.com/ig/calculator?hl=en&q=' . $amount . $from_code . '=?' . $to_code;
$response = file_get_contents($temp);
$result_string = explode('"', $response);
$final_result = $result_string['3'];
$float_result = preg_replace("/[^0-9\.]/", '', $full_result);
return $float_result;
}
Eminim bunu yapmanın en zarif yolu değildir, ancak PHP konusunda oldukça yeniyim. Umarım yardımcı olur!