2013-04-02 21 views
5

Hiện tại tôi gặp sự cố với GoDaddy và lưu trữ của nó. Khoảng thời gian tối đa cho phép cho tập lệnh PHP chạy được đặt là 120 giây = 2 phút.Làm mới PHP Trang

Thỉnh thoảng khi tôi chạy tập lệnh, phải mất hơn 120 giây và đôi khi phải mất 30 giây.

Khi mất hơn 120 giây, tôi nhận được Internal Server Error (500).

Câu hỏi tôi có là, có thể tìm ra liệu thời gian chạy tập lệnh là 110 giây và sau đó làm mới trang sao cho Lỗi Máy chủ Nội bộ không xảy ra.

+1

Bạn không thể sử dụng 'set_time_limit()'? – kero

+0

Bạn có thể làm điều gì đó với 'microtime();' nhưng đối với việc làm mới, tôi không có bất kỳ ý tưởng nào. – lemondrop

+0

@kingkero, điều đó sẽ chỉ đặt giới hạn thời gian. Tôi cần phải biết nếu đạt đến giới hạn thời gian và nếu có, tôi cần phải làm mới trang. –

Trả lời

2

Nếu những gì từng làm cho tập lệnh của bạn chạy dài là một số loại chức năng chặn tự chứa (như truy vấn cơ sở dữ liệu), thì bạn bị loại.

Nếu không, giả sử bạn đang ở trong một vòng lặp rất lớn, sau đó chỉ cần làm toán tự của bạn.

Lúc đầu rất của kịch bản của bạn, tiết kiệm thời gian hiện tại: $t_start = time();

Sau đó ở phía trên cùng của vòng lặp của bạn, làm một $runtime = time() - $t_start; sau đó bạn có bao lâu bạn đã được chạy, và có thể sử dụng để phá vỡ của bạn loop gracefully nếu gần 120 giới hạn của bạn.

Các vấn đề liên quan