Différence entre sleep () et usleep () en PHP

tout organisme Peut m'expliquer quelle est la différence entre sleep() et usleep() en PHP.

j'ai demandé à utiliser les scripts suivants pour faire des applications de chat pour tirer longtemps mais dans ce script j'obtiens le même effet en utilisant usleep(25000); ou sans usleep(25000);

page 1.php

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" 
       type="text/javascript"></script>

<script>
var lpOnComplete = function(response) {
    console.log(response);
    // do more processing
    lpStart();
};

var lpStart = function() {
    $.post('page2.php', {}, lpOnComplete, 'json');
};

$(document).ready(lpStart);
</script>

page 2.php

<?php
$time = time();
while((time() - $time) < 30) {
    // query memcache, database, etc. for new data
    $data = getLatest();

    // if we have new data return it
    if(!empty($data)) {
        echo json_encode($data);
        break;
    }

    usleep(25000);
}

function getLatest() {
    sleep(2);
    return "Test Data"; 
}
?>
20
demandé sur Ian Gregory 2013-10-24 09:26:22

4 réponses

L'argument sleep les secondes, l'argument de usleep est microsecondes. À part ça, je pense qu'ils sont identiques.

sleep($n) == usleep($n * 1000000)

usleep(25000) ne dort que pendant 0,025 secondes.

36
répondu Barmar 2013-10-24 05:30:37

sleep() permet à votre code de dormir en quelques secondes.

  • sleep(5); // sleeps for 5 seconds

usleep() autorise votre code en ce qui concerne les microsecondes.

  • usleep(2500000); // sleeps for 2.5 seconds
5
répondu Ashwin 2017-10-12 15:39:32

usleep() est utilisé pour retarder l'exécution de "microsecondes" while sleep() est utilisé pour retarder l'exécution en secondes. Donc usleep(25000) 0,025 secondes.

Is there any difference between the two?
2
répondu shahpranaf 2013-10-24 06:04:50

une autre différence est les retours de sommeil 0 sur le succès, faux sur l'erreur. usleep ne retourne rien.

0
répondu Nick Walsh 2017-09-18 10:35:19