我有以下代码(如下)和使用的igoogle版本。

   $url = 'http://www.google.com/ig/calculator?hl=en&q=' . $amount . $from_Currency . '=?' . $to_Currency;

    $ch = curl_init();
    $timeout = 0;

    curl_setopt ($ch, CURLOPT_URL, $url);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch,  CURLOPT_USERAGENT , "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)");
    curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $rawdata = curl_exec($ch);
    curl_close($ch);

    $data = explode('"', $rawdata);
    $data = explode(' ', $data[3]);
    $var = $data[0];

但看了之后,他们使用了一个不同的url:
  'http://www.google.com/finance/converter?hl=en&a=' . $amount . '&from=' . $from_Currency . '&to=USD';

但是简单地更改url并不会返回我习惯的所需结果。
现在我只能得到
 http://www.w3.org/TR/html4/strict.dtd

那么有没有人在这个最新的货币转换器网址或有任何想法。或者用php替换

最佳答案

多亏了一些更深入的调查和重新整理发现了这篇文章。所以在某种程度上它是一个复制品。但问题是:
Need API for currency converting
我使用@hobailey answer进行临时修复,直到我可以将其更新到另一个版本或者google决定使用正确的api。

  $amount = urlencode($amount);
  $from_Currency = urlencode($from_Currency);
  $to_Currency = urlencode($to_Currency);
  $get = file_get_contents("https://www.google.com/finance/converter?a=$amount&from=$from_Currency&to=$to_Currency");
  $get = explode("<span class=bld>",$get);
  $get = explode("</span>",$get[1]);
  $converted_amount = preg_replace("/[^0-9\.]/", null, $get[0]);

07-24 19:48