PHP의 usleep() 함수는 현재 실행 중인 스크립트를 지정한 시간(마이크로초 단위)만큼 일시 중지할 때 사용합니다. 초 단위로만 대기할 수 있는 sleep() 함수와 달리, usleep()은 백만 분의 일초 단위까지 정밀하게 실행을 지연시킬 수 있어 타이밍 제어가 필요한 작업에 유용합니다.
문법
usleep(msec)
매개변수
msec − 스크립트 실행을 지연시킬 시간을 마이크로초(μs) 단위로 지정합니다. 참고로 1초는 1,000,000마이크로초입니다.
반환값
usleep() 함수는 별도의 반환값이 없습니다.
예제
<?php
echo date('h:i:s') . "<br>";
// 2초간 대기
usleep(2000000);
echo date('h:i:s') . "<br>";
// 5초간 대기
usleep(5000000);
echo date('h:i:s');
?>
출력 결과
위 예제를 실행하면 다음과 같은 결과가 출력됩니다.
03:06:08
03:06:10
03:06:15
참고 사항
2초간 대기하려면 usleep(2000000), 5초간 대기하려면 usleep(5000000)처럼 초 × 1,000,000 값을 전달합니다.
sleep() 함수는 정수 초 단위로만 대기할 수 있지만, usleep()은 더 세밀한 시간 제어가 가능합니다.
지연 시간이 길어지면 PHP의 max_execution_time 설정에 영향을 받을 수 있으므로 주의해야 합니다.