Прибавить процент к курсу валют

Discussion in 'PHP' started by StalkerKill, 16 Jan 2012.

  1. StalkerKill

    StalkerKill Elder - Старейшина

    Joined:
    27 Oct 2007
    Messages:
    0
    Likes Received:
    8
    Reputations:
    -1
    Уважаемые кодеры, выручайте..
    Помогите прибавить 2% к каждой валюте у скрипта:

    PHP:
    <?php 
      
    // Получаем текущие курсы валют в rss-формате с сайта www.cbr.ru 
      
    $content get_content(); 
      
    // Разбираем содержимое, при помощи регулярных выражений 
      
    $pattern "#<Valute ID=\"([^\"]+)[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>([^<]+)#i"
      
    preg_match_all($pattern$content$outPREG_SET_ORDER); 
      
    $dollar ""
      
    $euro ""
      
    $canad ""
      
    $funt "";
      foreach(
    $out as $cur
      { 
        if(
    $cur[2] == 840$dollar str_replace(",",".",$cur[4]); 
        if(
    $cur[2] == 978$euro   str_replace(",",".",$cur[4]); 
        if(
    $cur[2] == 124$canad   str_replace(",",".",$cur[4]); 
        if(
    $cur[2] == 826$funt   str_replace(",",".",$cur[4]); 
      } 
      echo 
    "Доллар - ".$dollar."<br>"
      echo 
    "Евро - ".$euro."<br>"
      echo 
    "Канадский доллар - ".$canad."<br>"
      echo 
    "Фунт стерлингов - ".$funt."<br>"
      function 
    get_content() 
      { 
        
    // Формируем сегодняшнюю дату 
        
    $date date("d/m/Y"); 
        
    // Формируем ссылку 
        
    $link "http://www.cbr.ru/scripts/XML_daily.asp?date_req=$date"
        
    // Загружаем HTML-страницу 
        
    $fd fopen($link"r"); 
        
    $text=""
        if (!
    $fd) echo "Запрашиваемая страница не найдена"
        else 
        { 
          
    // Чтение содержимого файла в переменную $text 
          
    while (!feof ($fd)) $text .= fgets($fd4096); 
        } 
        
    // Закрыть открытый файловый дескриптор 
        
    fclose ($fd); 
        return 
    $text
      } 
    ?> 
    Нужно сделать вывод:
    Доллар - 31.5830
    Долар Курс компании - 31,5830 + 2%
    Евро - 40.6189
    Евро Курс компании - 40.6189 + 2%

    Выручайте
    Канадский доллар - 31.0490
     
    #1 StalkerKill, 16 Jan 2012
    Last edited by a moderator: 16 Jan 2012
  2. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    StalkerKill в школе проценты не проходили что ли?

    PHP:
    $dollar floatval($dollar)*1.02;
     
    _________________________
  3. StalkerKill

    StalkerKill Elder - Старейшина

    Joined:
    27 Oct 2007
    Messages:
    0
    Likes Received:
    8
    Reputations:
    -1
    Не, просто не могу запрос составить (вот с этим плохо)
    HTML:
    echo "Доллар - "$dollar = floatval($dollar)*1.02; "<br>";  
    ак не работает

    ====================

    Дурак... спасибо!

    PHP:
      echo  "Доллар (ЦБ) - ".$dollar floatval($dollar)*1.02."<br>";
     
    #3 StalkerKill, 16 Jan 2012
    Last edited: 16 Jan 2012
  4. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    StalkerKill потом скажут что я потворствовал говнокоду. Лучше уж так сделайте:
    PHP:
     echo  "Доллар (ЦБ) - ".(floatval($dollar)*1.02)."<br>";  
     
    _________________________
    1 person likes this.
  5. StalkerKill

    StalkerKill Elder - Старейшина

    Joined:
    27 Oct 2007
    Messages:
    0
    Likes Received:
    8
    Reputations:
    -1
    а как округлить его до 2 знака после запятой?
    ну типо 31,75, а не 31,7581?

    Выручайте

    сам нашел ))
    Code:
    .round((floatval($dollar)*1.02),2).
     
    #5 StalkerKill, 18 Jan 2012
    Last edited: 18 Jan 2012
  6. justonline

    justonline network ninja

    Joined:
    27 Jul 2011
    Messages:
    499
    Likes Received:
    60
    Reputations:
    53
    http://www.php.su/functions/?round не?