[Q] PHP вывод.

Discussion in 'PHP' started by Deathdreams, 29 Jun 2009.

  1. Deathdreams

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

    Joined:
    8 Nov 2008
    Messages:
    342
    Likes Received:
    116
    Reputations:
    5
    Например у нас есть код:
    PHP:
     <?
    echo "kaif";
    sleep(60);
    ?>
    Вопрос: реально ли сделать,чтобы сначала на экран вывелось "kaif",а потом пошёл sleep на 60 сек.?
     
  2. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Вопрос уже столько раз задавался...
    Вообще, если ответить в лоб, то так оно и будет, но в браузере ничего не увидишь из-за буферизации.

    По теме:
    PHP:
    <?php
    echo "kaif"
    ob_flush();
    flush();
    sleep(60); 
    ?> 
     
  3. eLWAux

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

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    на офф сайте:
    http://www.php.ru/forum/viewtopic.php?p=125158&sid=aae100fb4b7374237e67625f1597db54
    предлагают такой код:
    PHP:
     ini_set("output_buffering",0);
     
    header("Pragma: no-cache");
     
    header("Cache-Control: no-cache, no-store, private");
     
    ob_implicit_flushtrue );
     echo 
    '123<br>';
     
    sleep(1);
     echo 
    '123<br>';
     
    sleep(1);
     echo 
    '123<br>';
     
    sleep(1);
     echo 
    '123<br>';
     
    sleep(1);
     echo 
    '123<br>';
     
    sleep(1);
     echo 
    '123<br>';
     
    sleep(1);
     echo 
    '123<br>';
     
    ob_end_flush();
     
    1 person likes this.
  4. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Проверял в Опере последней - не пашет
     
  5. mr.The

    mr.The Elder - Старейшина

    Joined:
    30 Apr 2007
    Messages:
    1,080
    Likes Received:
    456
    Reputations:
    38
    попробуй это:
    PHP:
    <?php 
    ob_implicit_flush 
    ();
    set_time_limit(0);
    echo 
    "kaif";  
    flush(); 
    sleep(60);  
    ?>
    правда, это ещё от хоста зависит.
     
  6. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Тоже самое, всё выводится спустя минуту только:

    PHP:
    <?php
    ob_implicit_flush 
    (); 
    set_time_limit(0); 
    echo 
    "kaif";   
    flush();  
    sleep(60);
    echo 
    "kaif1";    
    ?>
     
  7. imajo.ati

    imajo.ati Banned

    Joined:
    21 Feb 2008
    Messages:
    232
    Likes Received:
    62
    Reputations:
    8
    всё работает.. и в опере в том числе.

    PHP:
    <?php
        
    echo 'ololololo<br>';
        
    flush();
        
    sleep(10);
        echo 
    'end!';
    ?>

    php.ini:
    output_buffering = Off
    implicit_flush = Off
     
    #7 imajo.ati, 30 Jun 2009
    Last edited: 30 Jun 2009
  8. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    это если есть досту к php.ini:)
     
  9. [Soulfly]

    [Soulfly] New Member

    Joined:
    11 Feb 2009
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Не подскажете фри-хостов, где эта тема нормально работает?
     
  10. Большой джо

    Joined:
    28 Jun 2009
    Messages:
    51
    Likes Received:
    2
    Reputations:
    0
    Попробуй тут http://hostland.su, или http://www.hut.ru
     
  11. попугай

    попугай Elder - Старейшина

    Joined:
    15 Jan 2008
    Messages:
    1,519
    Likes Received:
    401
    Reputations:
    196
    Все работает в опере