113

私はオンライン注文システムをセットアップしていますが、私はオーストラリアにいて、国際的な顧客のために米ドルまたはユーロで価格を表示したいと考えています。

PHPスクリプトからアクセスできる解析しやすい形式で、どこかでネットから最新の為替レートを引き出すことができるかどうか、誰かが知っていますか?


更新:これを実装する PHP クラスを作成しました。コードは私のウェブサイトから取得できます

4

15 に答える 15

70

yahoo から簡単な形式で通貨換算を取得できます。

たとえば、GBP から EUR に変換するには: http://download.finance.yahoo.com/d/quotes.csv?s=GBPEUR=X&f=sl1d1t1ba&e=.csv

于 2008-10-08T10:23:43.697 に答える
40

この回答は非常に遅れていますが、上記の回答には重要な情報が欠けています。

顧客に正確な価格を表示するには、外国為替レートの仕組みを理解することが重要です。

ほとんどの FX サービスは、スポット レート (ビッドとアスクの中間) のみを引用します。スポットは為替レートの一種の省略形ですが、ビッドで売るかアスクで買うしかできないため、誰もスポットを取得しません。通常、それらの間で少なくとも 1% のスプレッドが見られるため、顧客のスポット レートは 0.5% オフになります。

しかしそれだけではありません。顧客はほぼ間違いなくクレジット カードを使用しており、Visa/Mastercard/Amex はすべて外国為替手数料を請求しています。これらは、少なくとも 2.5% で、私の経験では自明ではありません。たとえば、シティバンク オーストラリアの手数料は 3.3% です。これらはカードごとに異なるため、顧客に請求される最終的な価格を予測する方法はありません.

為替レートに基づいて顧客に「正確な」価格を見積もりたい場合は、上記を考慮してバッファーを提供し、見積もりよりも多く請求しないようにする必要があります。

FWIW、私は F/X 変換が他の方法で示すものに 4% を追加しています。

于 2010-04-05T12:18:55.670 に答える
27

追加してもいいかもしれません

  http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml

リストに。

欧州中央銀行が提供する公式参照レートは、欧州中央銀行システム内外の中央銀行間の定期的な毎日の協調手続きに基づいています。

フィードは XML およびその他の形式です。
更新は通常、ECB 時間 (= フランクフルト時間) の午後 2 時 15 分 (14:15) に行われます。

于 2009-02-28T16:35:27.087 に答える
12

私は最近同じことを実装しましたが、Google の API を使用しています。クエリ URL は次のようになります。

http://www.google.com/ig/calculator?hl=en&q=1GBP=?USD

3 つのパラメーターが必要です。最初のパラメーターは金額で、その後に換算元のISO 4217通貨コード、等号と疑問符、換算先の通貨コードが続きます。Google がサポートするコードのリストは、こちらで確認できます。クエリへの応答は次のようになります。

{lhs: "1 British pound",rhs: "1.6132 U.S. dollars",error: "",icc: true}

これはかなり自明なので、ここでは詳しく説明しません。これは、クエリ応答を処理した方法です。

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;
}

これは最もエレガントな方法ではないと確信していますが、私は PHP の初心者です。それが役に立てば幸い!

于 2012-10-02T02:04:36.680 に答える
12

別の非常に優れた無料のオープンソース リンクは次のとおりです。

https://raw.github.com/currencybot/open-exchange-rates/master/latest.json
(ここで見つけました: http://josscrowcroft.github.com/open-exchange-rates/ )

[更新] :
Open Exchange Rates プロジェクト データは GitHub から移動されました。
現在、http: //openexchangerates.org/
で入手できます。JSON 形式のデータは、 http: //openexchangerates.org/latest.jsonで入手できます。

アクセス料金なし、レート制限なし、醜い XML なし - ただ無料で、1 時間ごとに更新される JSON 形式の為替レート。
これは現在「完全に」無料ではありません。新しいライセンスでは、1 か月あたり最大 1000 ヒットが許可され、その後は料金を支払う必要があると記載されています。単一の通貨コンバーター (基本機能) を使用する場合も支払う必要があります。

[ 注:この回答も参照してください。]

于 2011-12-05T20:41:06.670 に答える
6

YQL に Open Data テーブルを追加しました。これを使用して、yahoo.finance から為替レート データを取得できます。

YQL コンソールで試す

「where pair in ('EURUSD','GBPUSD')」よりもコンマ区切り形式の方が望ましいですが、いずれにせよ、両方を使用したり、それらを混在させたりすることもできます。

于 2010-11-25T06:44:01.753 に答える
4

為替レートを提供するソープサービスはこちら

http://www.newyorkfed.org/markets/pilotfx.html

于 2008-10-08T10:07:16.213 に答える
4

このサイトには、無料の通貨換算サービスがあります。

http://www.webservicex.net/WS/WSDetails.aspx?WSID=10

于 2008-10-08T10:10:31.167 に答える
3

iGoogle は 2013 年 11 月 1 日に廃止されました。この API は機能しなくなりました。

為替レートを取得するには、次のようなものを使用できます。

function get_exchange_rate($from, $to){
    $data = file_get_contents("http://www.google.com/ig/calculator?hl=en&q=1{$from}=?{$to}");
    preg_match('/rhs\:\s?"([0-9\.]+)/', $data, $m);
    return $m[1];
}

そこに DB キャッシュを追加して、スロットリングされないようにすることができます。

他の投稿/コメントで指摘されているように、このレートを使用して通貨を計算します

于 2012-08-15T11:35:06.437 に答える
3

このRESTfulを試してください(これが本当にRESTかどうかはわかりません.SOAPから取得したため、HTTP GETを使用してアクセスしようとしました)

于 2011-10-01T06:58:16.957 に答える
2

Oanda.comは通貨レートをXMLAPIとして公開していますが、無料ではありません

于 2009-10-01T00:20:18.773 に答える
2

XE.comは為替レートのフィードを提供しています。無料ではありませんが。

于 2008-10-08T10:06:48.770 に答える
1

coinnill.com には一種の Web サービスがあります。

http://coinmill.com/rss/AUD_USD.xml

たとえば、AUD --> USD レートが表示されます。返された XML を解析するだけです。

于 2008-10-08T09:59:43.683 に答える
1

これは私のために働いています。

為替レート API : http://currency-api.appspot.com/

于 2012-11-22T11:31:03.813 に答える
1

私は追加せざるを得ないと感じています:

http://www.exchangerate-api.com/

クリーンな RESTful API で非常に簡単に使用でき、サインアップは 5 秒で完了します。ほとんどの主要言語のコーディング例が含まれており、ほとんどが 2 ~ 3 行の長さです。

レートは 1 時間ごとに更新されるため、ほとんどの用途には問題なく、月額 7 ドルで 30000 の月間クエリを取得できます。それ以上必要になったことはありませんが、ボリュームが大きい場合の料金は非常に妥当です。

于 2010-09-29T08:58:43.257 に答える