Transform.class.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. /*
  3. * Desc : Action Transform class
  4. *
  5. * Author: huchunmei
  6. */
  7. class Transform{
  8. public function __construct(){}
  9. /*
  10. 游戏币转美元,美元转当地金额
  11. $game_currency,游戏币
  12. $game_rate,游戏币与美元之间的汇率
  13. $local_money,当地的货币代码
  14. */
  15. public static function transform($game_currency,$game_rate,$local_money){
  16. $money = $game_currency*$game_rate;//把游戏币转换成美元
  17. $rate = Transform::fromUSD('USD',$local_money);//获得该货币对应的美元汇率
  18. $transform_money = $money*$rate;
  19. return $transform_money;
  20. }
  21. //实时汇率函数
  22. public static function fromUSD($from='USD',$to='CHY'){
  23. if($from&&$to){
  24. $url="http://download.finance.yahoo.com/d/quotes.html?s=$from$to=X&f=sl1d1t1ba&e=.html";
  25. $contents=Transform::_link($url);
  26. $contents=str_replace("\"","",str_replace("/","-",$contents));
  27. $list=explode(",",$contents);
  28. return $list[1];//$list[1]就是当前汇率
  29. }
  30. exit;
  31. }
  32. public static function _link($url){
  33. $ch = curl_init();
  34. $timeout = 5;
  35. curl_setopt ($ch, CURLOPT_URL, "$url");
  36. curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
  37. curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
  38. curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
  39. $contents = curl_exec($ch);
  40. curl_close($ch);
  41. if($contents=="Forbidden" || empty($contents)){
  42. $contents = @file_get_contents("$url");
  43. }
  44. return $contents;
  45. }
  46. }