多种货币使用API​​的费率

时间:2012-03-19 15:41:43

标签: php get currency

我正在寻找一些代码的帮助。我试着把它放到床上因为它让我疯了。 Psuedo的代码是

  1. 从Yahoo API下载费率并将我的基本费率申报到我的外汇。
  2. 存储一系列货币以供选择,以与基础货币进行比较。
  3. 然后我获取所选的货币并在SESSION中注册以在其他页面上使用。 (我不确定这是否正确?)
  4. 然后,我计算我的产品的价格GBP到选定的外币。
  5. 在页面的任意位置输出转换后的价格。
  6. 我的脚本从URL中获取GET值,如下所示:

    .com?c=EUR

    我的代码是这样的..

    1. 首先我从Yahoo API获得费率:

      session_start();
      
      $from   = 'GBP';
      $to     = '$c';
      $url = 'http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s='. $from . $to .'=X';
      $handle = @fopen($url, 'r');
      
      if ($handle) {
        $result = fgets($handle, 4096);
        fclose($handle);
      }
      $allData = explode(',',$result); /* Get all the contents to an array */
      $PoundValue = $allData[1];
      
    2. 然后我存储了一系列货币。

      $currency_array = array ('USD','EUR','RMB','JPY','AUD','CHF')
      
    3. 然后我得到所选的货币。

       if(isset($_GET['c'])) {  
           $c = $_GET['c'];
      
          if(array($currency_array)) {
              $_SESSION['currency_array'] = $c;
          }
       }
      
    4. 然后我计算产品价格。

       $Total = $Price * $currency_array; 
      
       $outprice = number_format($Total, 2, '.', ',');
      
    5. 然后我在页面上输出

       <?php echo .$outprice; ?>
      
    6. 所有我的编码在逻辑上都是正确的顺序吗?

      非常感谢任何帮助。

      正如旁注。当我输入以.php?c=EUR

      结尾的网址时

      我在那里放了一个转储,我的输出是

      array
        0 => string '"GBP$C=X"' (length=9)
        1 => string '0.00' (length=4)
        2 => string '"N/A"' (length=5)
        3 => string '"N/A"
      
      ' (length=7)
      

      为什么$c值不会作为所选货币返回?

      干杯,

      约拿

1 个答案:

答案 0 :(得分:2)

$to = '$c';

应该只是

$to = $c;

$to = "$c"; // redundant "make a string of this string" version.

单引号字符串不会插入变量值。