문제

나는 설정 온라인 주문하는 시스템이지만 나에서 호주 및 국제 고객에게 보여주고 싶은 가격에서는 미국 달러 또는 그래서 그들은 유로를 만들어야 하지 않는 정신적 노력에서 변환하는 호주 달러입니다.

사람이 알고 있는 경우 내가 풀 수 있습 up to date 환율 off the net 어딘가에서 분석하기 쉬운 형식으로 내가에서 액세스할 수 있는 내 PHP 스크립트를 사용해야 할까요?


업데이트: 나는 지금 쓸 PHP 클래스를 구현하다. 당신은 코드를 얻을 수 있습니다 제 웹사이트.

도움이 되었습니까?

해결책

Yahoo에서 간단한 형식으로 통화 변환을 얻을 수 있습니다.

예를 들어, GBP에서 EUR로 변환합니다.http://download.finance.yahoo.com/d/quotes.csv?s=GBPEUR=X&f=sl1d1t1ba&e=.csv

다른 팁

이 답변은 매우 늦었지만 위의 답변에서 핵심 정보가 누락되었습니다.

고객에게 정확한 가격을 보여 주려면 외환 금리의 작동 방식을 이해하는 것이 중요합니다.

대부분의 FX 서비스는 스팟 비율 만 인용합니다 (입찰과 요청 사이의 중간). 그 자리는 환율에 대한 일종의 속기이지만, 입찰에서만 판매하거나 Ask에서 구매할 수 있기 때문에 아무도 그 자리를 얻지 못합니다. 당신은 일반적으로 그들 사이에 적어도 1%의 확산을보고 있으므로 고객의 경우 스팟 비율이 0.5% 할인됩니다.

그러나 고객은 거의 확실히 신용 카드와 비자/마스터 카드/Amex를 사용하고 있습니다. 이것들은 내 경험에서 최소 2.5%이상의 사소한 일입니다. 예를 들어, Citibank Australia는 3.3%를 청구합니다. 이들은 카드마다 다르므로 고객이 청구 할 최종 가격을 예측할 방법이 없습니다.

환율에 따라 고객에게 "정확한"가격을 인용하려면 위의 내용을 고려하고 버퍼를 제공하여 인용 한 것보다 더 많은 충전을하지 않도록해야합니다.

fwiw, 나는 f/x 변환이 나타내는 것에 4%를 추가했습니다.

있을 수 있습니다 추가

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

위 목록에 있습니다.

공식적인 참조를 요금을 제공합에 의하여 유럽 중앙은행 에 따라 매일 정기적으로 concertation 절차 사이의 중앙 은행에서와 외부 유럽의 시스템은 중앙 은행입니다.

피드 XML 고 일부 다른 형식.
업데이트하는 이상적 위치에서 2.15 오후(14:15)ECB 시간(=프랑크푸르트 시간).

최근에 같은 것을 구현했지만 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를 처음 접했습니다. 도움이되기를 바랍니다!

또 다른 매우 훌륭한 무료 및 OpenSource 링크는 다음과 같습니다.

https://raw.github.com/currencybot/open-exchange-rates/master/latest.json
(여기서 찾았습니다. http://josscrowcroft.github.com/open-exchange-rates/)

업데이트]:
공개 환율 프로젝트 데이터가 Github에서 멀어졌습니다.
지금은 다음과 같이 사용할 수 있습니다. http://openexchangerates.org/
JSON 형식의 데이터는 다음과 같습니다. http://openexchangerates.org/latest.json

액세스 수수료, 요금 제한 없음, 못생긴 XML 없음 - 그냥 무료, JSON 형식의 시간별 업데이트 환율.
이것은 지금 "전적으로"무료가 아닙니다. 새로운 라이센스에 따르면 한 달에 최대 1000 개의 조회수가 허용되고 지불해야합니다. 단일 통화 변환기 (기본 기능)를 사용하려면 지불해야합니다.

참고 :보고 싶을 수도 있습니다 이것 대답하십시오. ]

YQL에 오픈 데이터 테이블을 추가했습니다.이를 사용하여 Yahoo.finance에서 환율 데이터를 검색 할 수 있습니다.

YQL 콘솔에서 사용해보십시오

Comma-Separated Format은 "( 'EURUSD', 'GBPUSD') 쌍을 여기에서 선호하지만 어쨌든 둘 다 사용하고 심지어 혼합 할 수도 있습니다.

다음은 환율을 제공하는 비누 서비스입니다

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

이 사이트에는 무료로 통화 변환기 서비스가 있습니다.

http://www.webservicex.net/ws/wsdetails.aspx?wsid=10

이 시도 RESTFUL (이것이 실제로 휴식인지 확실하지 않습니다. 원래 비누에서 얻었 기 때문에 HTTP get을 사용하여 액세스하려고했습니다).

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 캐시를 추가 할 수 있습니다.

다른 게시물 / 의견에 언급 된 바와 같이이 요금을 사용하여 통화를 계산합니다.

xe.com 환율에 대한 사료를 제공합니다. 그래도 무료는 아닙니다.

OANDA.com은 통화 요금을 XML API로 노출하지만 무료는 아닙니다.

Coinnill.com에는 일종의 웹 서비스가 있습니다.

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

예를 들어 AUD-> USD 속도를 제공합니다. 돌아 오는 XML을 구문 분석하면됩니다.

나는 추가해야한다고 느낀다 :

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

깨끗한 편안한 API와 함께 사용하기가 간단하고 가입하는 데 5 초가 걸립니다. 대부분의 주요 언어에 대한 코딩 예제가 포함되며, 대부분은 2-3 줄 길이입니다.

요금은 시간당 업데이트되므로 대부분의 용도에 적합하며 한 달에 7 달러에 30000 개의 월별 쿼리를 얻을 수 있습니다. 나는 그 이상을 필요로하지 않았지만, 비율은 더 높은 양으로 매우 합리적입니다.

이것은 나를 위해 일하고 있습니다.

환율 API : http://currency-api.appspot.com/

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top