2016-06-21 9 views
0

ループ内のイベントを表示する方法はありますか?たとえば、私はこのようなコードを持っている:ループのイベントを表示する方法

foreach($users as $the_user){ 

    $user_id = $the_user['user_id']; 

    if($the_user['points_request'] == 0){ 
     $sql = "UPDATE user SET points_request = '20' WHERE user_id = '{$user_id}' "; 
     db::query($sql); 
     echo "Newly added: ".$the_user['user_fullname'].'</br>'; 

    }else{ 
     echo "Already added: ".$the_user['user_fullname'].'</br>'; 
    } 
} 

を、私はこのコードを実行するときだから、textboxdivラッパーで行あたりのイベントが表示されます。または、アラートなどで表示することもできますか?

答えて

1

これは、時間(ブラウザのすべての方法)で、それぞれの行が表示されます:

if (ob_get_level() == 0) ob_start(); 

foreach($users as $the_user){ 

    $user_id = $the_user['user_id']; 

    if($the_user['points_request'] == 0){ 
     $sql = "UPDATE user SET points_request = '20' WHERE user_id = '{$user_id}' "; 
     db::query($sql); 
     echo "Newly added: ".$the_user['user_fullname'].'</br>'; 

    }else{ 
     echo "Already added: ".$the_user['user_fullname'].'</br>'; 
    } 
    ob_flush(); 
    flush(); 
} 

ob_end_flush(); 
+0

ただ、一度にすべての出力を表示します。一度にライン(出力)を表示することは可能ですか?実行時 - >非表示、実行時 - >表示。 –

+0

違いを見るには 'flush();の後に' sleep(2); 'を追加してください –

+0

うわー!、私はその機能を知らなかった。ありがとう、トン! –

関連する問題