PHP đợi trong 5 giây

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách sử dụng hàm sleep hoặc usleep trong PHP để tạm dừng tập lệnh

Khi viết các tập lệnh PHP của bạn, có thể đôi khi bạn cảm thấy muốn tạm dừng/ngủ tập lệnh

Tạm dừng thực thi tập lệnh rất hữu ích trong các tình huống khác nhau. Một ví dụ về cách sử dụng là khi thực hiện một số lượng lớn các yêu cầu mạng, bạn có thể muốn ngủ tập lệnh PHP của mình để ngăn nó tràn vào mạng

Bạn cũng có thể sử dụng nó để ngăn tập lệnh tiêu thụ một lượng tài nguyên CPU bất thường. Sử dụng chức năng ngủ giữa các tác vụ có thể ngăn những tác vụ hoàn thành nhanh nhanh chóng áp đảo CPU

Hai cách chính mà bạn có thể ngủ tập lệnh trong PHP là sử dụng “

1” hoặc “
2“. Trong các phần sau, chúng tôi sẽ đề cập đến cả hai

Giải thích nhanh giữa những điều này là chức năng “

1” hoạt động trong vài giây và “
2” hoạt động trong micro giây

Hàm PHP ngủ []

Sử dụng chức năng ngủ của PHP, có thể tạm dừng việc thực thi tập lệnh trong một số giây được chỉ định

Hàm chỉ nhận một tham số duy nhất có tên là “

0“, trong đó bạn đặt thời gian ngủ tính bằng giây

Dưới đây bạn có thể xem định nghĩa cho hàm

1 trong PHP. Bạn có thể thấy tham số của nó được lấy dưới dạng số nguyên và nó trả về một số nguyên

sleep[int $seconds]: int

Hàm sleep[] sẽ trả về 0 [

2] khi nó ngủ thành công. Tuy nhiên, nếu ngủ tập lệnh không thành công, nó sẽ trả về giá trị Boolean
3

Vì hàm này có thể trả về

2 hoặc
3, hãy đảm bảo bạn sử dụng toán tử giống hệt của PHP [
6] khi kiểm tra giá trị trả về. Mặt khác, kiểu tung hứng của PHP sẽ coi 0 và false là giống nhau

Xin lưu ý rằng giây không thể là một phần của giây. Nếu bạn cần một phần giây, hãy sử dụng hàm

7

Ví dụ sử dụng hàm sleep[] trong PHP

Bây giờ chúng ta đã biết cú pháp của hàm sleep[], hãy viết một đoạn script PHP nhanh để bạn có thể thấy nó hoạt động như thế nào

Chúng tôi sẽ sử dụng hàm echo của PHP để in thời gian hiện tại cho ví dụ này. Ta có thể lấy lại thời gian hiện tại nhờ hàm

8. Sử dụng tùy chọn “
9” sẽ nhận được giờ, phút và giây hiện tại

Chúng tôi bắt đầu bằng cách in chuỗi “

sleep[int $seconds]: int
00“, nối thời gian hiện tại và cuối cùng, ký tự dòng mới [
sleep[int $seconds]: int
01]

Sau đó, chúng tôi sử dụng hàm

1 của PHP để sử dụng, đặt tham số duy nhất của nó thành “
sleep[int $seconds]: int
03” để ngủ tập lệnh trong 5 giây

Cuối cùng, để cho bạn thấy tập lệnh đã ngủ, chúng tôi in văn bản “

sleep[int $seconds]: int
04“, nối thời gian hiện tại

Sau khi chạy tập lệnh này, bạn sẽ thấy kết quả tương tự như những gì chúng tôi đã hiển thị bên dưới

Với sự khác biệt về thời gian, bạn có thể thấy chức năng ngủ đã tạm dừng việc thực thi tập lệnh như thế nào

sleep[int $seconds]: int
0

Hàm usleep[] trong PHP

Nếu bạn cần tạm dừng việc thực thi tập lệnh PHP của mình trong thời gian ngắn hơn một giây, bạn sẽ cần sử dụng hàm usleep[]

Với chức năng này, bạn có thể chỉ định số micro giây mà bạn muốn tập lệnh ở chế độ ngủ. Một micro giây là một phần triệu giây

Ví dụ: nếu bạn muốn ngủ tập lệnh PHP của mình trong một phần tư giây [

sleep[int $seconds]: int
05], bạn sẽ sử dụng giá trị
sleep[int $seconds]: int
06

Dưới đây, bạn có thể xem định nghĩa cho hàm usleep[] trong PHP. Nó có một tham số duy nhất phải luôn là số nguyên và nó trả về một số nguyên

sleep[int $seconds]: int
8

Giống như chức năng ngủ,

7 sẽ trả về
2 khi nó ngủ thành công. Tuy nhiên, nếu chức năng không ngủ trong suốt thời gian đó, nó sẽ trả về
3

Xin lưu ý rằng việc sử dụng thời gian ngủ ngắn dài hơn “

sleep[int $seconds]: int
80” [1 giây] có thể không được hệ thống máy chủ hỗ trợ

Ví dụ về việc sử dụng hàm usleep[]

Đối với ví dụ này, chúng tôi sẽ sử dụng hàm usleep[] của PHP để ngủ tập lệnh của chúng tôi trong 250000 micro giây [một phần tư giây]

Chúng tôi sẽ cần sử dụng thời gian được cung cấp bởi chức năng “

sleep[int $seconds]: int
81” để theo dõi điều này. Điều này cung cấp cho chúng tôi dấu thời gian Unix hiện tại tính bằng micro giây

Bắt đầu tập lệnh bằng cách lấy thời gian vi mô hiện tại và lưu trữ nó trong biến “

sleep[int $seconds]: int
82”

Sau đó, chúng ta có thể sử dụng hàm

2, chuyển vào
sleep[int $seconds]: int
06 để ngủ tập lệnh trong
sleep[int $seconds]: int
06 micro giây

Sau khi ngủ, chúng tôi lấy lại thời gian vi mô và lưu trữ nó trong biến “

sleep[int $seconds]: int
86”

Sau đó, chúng tôi tính toán tổng thời gian thực hiện bằng cách lấy thời gian kết thúc trừ đi thời gian bắt đầu và lưu trữ nó trong biến “

sleep[int $seconds]: int
87”

Cuối cùng, chúng tôi sử dụng hàm echo để xuất tập lệnh mất bao lâu để chạy. Điều này sẽ cho chúng tôi thấy tập lệnh của chúng tôi ngủ như thế nào trong khi thực thi

9

Dưới đây là một ví dụ về những gì PHP sẽ in sau khi chạy ví dụ trên

Bạn sẽ nhận thấy rằng thời gian trả về không chính xác là thời gian ngủ vì các chức năng không hoàn thành ngay lập tức

0

Phần kết luận

Xuyên suốt hướng dẫn này, chúng tôi đã chỉ cho bạn hai cách để bạn có thể tạm dừng việc thực thi tập lệnh PHP của mình

Hai hàm mà chúng ta đã khám phá trong hướng dẫn này là các hàm

1 và
2 của PHP. Cả hai đều có cách sử dụng cụ thể nhưng sẽ tạm dừng việc thực thi tập lệnh

Làm cách nào để đợi 5 giây trong PHP?

Hàm sleep[] trong PHP là một hàm sẵn có được sử dụng để trì hoãn việc thực thi tập lệnh hiện tại trong một số lần xác định .

Làm cách nào để đợi 2 giây trong PHP?

Hàm sleep[] trì hoãn việc thực thi tập lệnh hiện tại trong một số giây đã chỉ định.

Có chức năng chờ trong PHP không?

Chức năng chờ tạm dừng thực thi quy trình hiện tại cho đến khi một phần tử con đã thoát hoặc cho đến khi tín hiệu được gửi có hành động là chấm dứt quy trình hiện tại hoặc gọi chức năng xử lý tín hiệu

Làm cách nào để thêm tạm dừng trong PHP?

Hàm usleep[] trong PHP . Với chức năng này, bạn có thể chỉ định số micro giây mà bạn muốn tập lệnh ở chế độ ngủ. use the usleep[] function. With this function, you can specify the number of microseconds you want the script to sleep.

Chủ Đề