用于货币转换的PHP脚本

时间:2010-04-14 05:42:51

标签: php codeigniter

我正在寻找一个可以进行货币转换的PHP脚本。

我在哪里可以找到与codeigniter一起使用的?

7 个答案:

答案 0 :(得分:2)

取自http://www.ecb.europa.eu/stats/exchange/eurofxref/html/index.en.html#dev

How to parse the data
This is just an example

<?php
//This is a PHP (4/5) script example on how eurofxref-daily.xml can be parsed 

//Read eurofxref-daily.xml file in memory 
$XMLContent= file("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml");
//the file is updated daily between 2.15 p.m. and 3.00 p.m. CET

foreach ($XMLContent as $line) {
        if (ereg("currency='([[:alpha:]]+)'",$line,$currencyCode)) {
            if (ereg("rate='([[:graph:]]+)'",$line,$rate)) {
                    //Output the value of 1 EUR for a currency code 
                    echo '1 &euro; = '.$rate[1].' '.$currencyCode[1].'<br />';
                    //--------------------------------------------------
                    // Here you can add your code for inserting
                    // $rate[1] and $currencyCode[1] into your database
                    //--------------------------------------------------
            }
        }
}
?> 

不是最好的脚本,但是再一次,你只是要求gimme-teh-codez。

答案 1 :(得分:2)

您可以使用以下代码轻松转换货币与谷歌转换。通过google http://mydons.com/currency-conversion-library-in-codeigniter/

了解有关PHP中货币转换库的更多信息
public function getResult(){           
$result = file_get_contents($this->googleUrl);/* Convert the above result into Array */                           
$result = explode('"', $result);/* Right side text*/           
$convertedAmount = explode(' ', $result[3]);           
$conversion = $convertedAmount[0];           
$conversion = $conversion * $this->amount;          
$conversion = round($conversion, 2);//Get text for converted currency               
$rightText = ucwords(str_replace($convertedAmount[0],"",$result[3]));//Make right hand side string           

$rightText = $conversion.$rightText;/* Left side text*/           
$googleLeft = explode(' ', $result[1]);           
$fromAmount = $googleLeft[0];//Get text for converted from currency              

$fromText = ucwords(str_replace($fromAmount,"",$result[1])); //Make left hand side string           
$leftText = $this->amount." ".$fromText;             
return $leftText." = ".$rightText; 
}

答案 2 :(得分:1)

您可以非常简单地计算汇率:

$from = "GBP";
$to = "USD";
$url = 'http://www.webservicex.net/CurrencyConvertor.asmx/ConversionRate?FromCurrency='.$from.'&ToCurrency='.$to;
$rate = simplexml_load_file($url);
echo 'Rate from '.$from.' to '.$to.' is: '.$rate[0];

答案 3 :(得分:1)

我从https://currencyfreaks.com/documentation.html#Conversion获取了此PHP代码进行货币换算。它提供了全球179种货币的最新货币兑换率,包括加密货币和贵金属。

setUrl('https://api.currencyfreaks.com/latest/convert
    ?apikey=YOUR_APIKEY
    &from=USD&to=PKR
    &amount=500');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
  'follow_redirects' => TRUE
));
try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
    echo $response->getBody();
  }
  else {
    echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
    $response->getReasonPhrase();
  }
}
catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}

希望对您有帮助。

答案 4 :(得分:0)

我上周写了一个CodeIgniter货币转换模型。您可以从here下载。

它使用欧洲中央银行的XML Feed,每周工作日更新一次。

答案 5 :(得分:0)

    <?php
    defined('BASEPATH') OR exit('No direct script access allowed');

    class CurrencyCon extends CI_Controller {
                                                public function index()
                                                {
                                                $dollarValue=$this->convert_currency('USD', 'INR',1890);//parameter3 give the amount to be converted.
                                                echo 'Actual Rate '.$dollarValue."";
                                                echo 'Round Figure '.$con_dollor = round($dollarValue,2);
                                                }
                                            function convert_currency($currency_from,$currency_to,$currency_input)
                                            {
                                            $yql_base_url = "http://query.yahooapis.com/v1/public/yql";
                                            $yql_query = 'select * from yahoo.finance.xchange where pair in ("'.$currency_from.$currency_to.'")';
                                            $yql_query_url = $yql_base_url . "?q=" . urlencode($yql_query);
                                            $yql_query_url .= "&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys";
                                            $yql_session = file_get_contents($yql_query_url);
                                            $yql_json =  json_decode($yql_session,true);
                                            $currency_output = (float) $currency_input*$yql_json['query']['results']['rate']['Rate'];
                                            return $currency_output;

                                            }

                                                    }
? >

答案 6 :(得分:0)

  

我在这里使用谷歌财务Api。使用这个:

 function currencyConverter($from_Currency, $to_Currency, $amount) { 
            $from_Currency = urlencode($from_Currency);
            $to_Currency = urlencode($to_Currency);
            $get = file_get_contents("https://finance.google.com/finance/converter?a=$amount&from=$from_Currency&to=$to_Currency");
            $get = explode("", $get);
            $get = explode("", $get[1]);
            $converted_currency = preg_replace("/[^0-9\.]/", null, $get[0]); 
            return $converted_currency; 
        }
  Core php
  ========
  $converted_currency=currencyConverter('USD', 'INR', 1);
  echo $converted_currency;


  Codeigniter
  ===========
  $converted_currency=$this->currencyConverter('USD', 'INR', 1);
  echo $converted_currency;