За последние 24 часа нас посетили 128645 программистов и 2877 роботов. Сейчас ищут 1630 программистов ...

Подскажите как преобразовать цифры

Тема в разделе "PHP для новичков", создана пользователем marsik, 20 июл 2010.

  1. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Куда проще?
     
  2. phpdude

    phpdude Активный пользователь

    С нами с:
    9 июл 2010
    Сообщения:
    697
    Симпатии:
    0
    Код (Text):
    1. dev:~# php test.php
    2. 1 : 0,44316291809082<br/>
    3. 2 : 0,69142580032349<br/>
    4. 3 : 0,38251399993896<br/>
    PHP:
    1. $t = microtime(true);
    2. for ($i = 0; $i < 100000; $i++) {
    3.   sscanf($date_from, "%4s%2s%2s", $y, $m, $d);
    4.   $date_to = $y.'.'.$m.'.'.$d;
    5. }
    6. echo '3 : '.(microtime(true) - $t)."<br/>\n";
    7.  
     
  3. phpdude

    phpdude Активный пользователь

    С нами с:
    9 июл 2010
    Сообщения:
    697
    Симпатии:
    0
    во имя великого ОЛОЛОЛОЛ!!! :)
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    PHP:
    1. <?php
    2.  
    3. $date_from = '19810101';
    4. $date_to = 'gggg.mm.dd';
    5.  
    6. $t = microtime(true);
    7. for ($i = 0; $i < 100000; $i++) {
    8.   $a = str_split($date_from, 2);
    9.   $date_to = $a[0].$a[1].'.'.$a[2].'.'.$a[3];
    10. }
    11. echo '1 : '.(microtime(true) - $t).'<br>';
    12.  
    13. $t = microtime(true);
    14. for ($i = 0; $i < 100000; $i++) {
    15.   $year = substr($date_from, 0, 4);
    16.   $month = substr($date_from, 4, 2);
    17.   $day = substr($date_from, 6, 2);
    18.   $date_to = $year.'.'.$month.'.'.$day;
    19. }
    20. echo '2 : '.(microtime(true) - $t).'<br>';
    21.  
    22.  
    23. $t = microtime(true);
    24. for ($i = 0; $i < 100000; $i++) {
    25.   $date_to = date('d.m.Y', strtotime($date_from));
    26. }
    27. echo '3 : '.(microtime(true) - $t).'<br>';
    28.  
    29.  
    30. $t = microtime(true);
    31. for ($i = 0; $i < 100000; $i++) {
    32.   sscanf($date_from, "%4s%2s%2s", $y, $m, $d);
    33.   $date_to = $y.'.'.$m.'.'.$d;
    34. }
    35. echo '4 : '.(microtime(true) - $t)."<br/>\n";
    36. ?>

     
  5. phpdude

    phpdude Активный пользователь

    С нами с:
    9 июл 2010
    Сообщения:
    697
    Симпатии:
    0
    igordata
    олол :)

    щас пхп скомпилю, на сервере проверю, интересно стало :D

    на вирт машинке так получилось
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Apelsin wins! Topic clos.
    Вот кстати можем наблюдать прямую трансляцию с ютуба как Апельсинкин радуется и ликует у себя на хате.
    [​IMG]
    [​IMG]
     
  7. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    igordata
    )))

    Похоже, тут одной рулеткой не обойтись, пойду вторую принесу :)