dongxian5735 2010-06-04 06:10 采纳率: 0%
浏览 31
已采纳

如何在PHP中控制脚本执行时间

for example I do have 5 PHP functions on a page which execute when loading. each functions has its own processing time and some of them take more time sometimes to complete the task. hence the total loading time of the said page is slow.

my question is how do I control execution time for each script and set time limit for the same. I am aware that there is an in built function in PHP called set_time_limit(); but it gives fatal error if time is beyond the maximum limit...

  • 写回答

2条回答 默认 最新

  • doonbfez815298 2010-06-04 06:30
    关注

    From what your question says, I'm assuming that you have 5 functions in a single PHP file (script), executing, and if one of them executes for too long, it should be skipped.

    The only way you can skip functions is to poll the time every once in a while.

    function myFunction($someVar) {
        $startTime = time();
        $timeLimit = 10; // Let's say, time limit is 10 seconds
        while ($blah_blah == true) { // Some loop or code that takes a long time
            // Do some work
            if (time() - $startTime > $timeLimit) return; // Time's up!
        }
        // Done
        return;
    }
    

    Note that the function will only return at points where it checks if the time's up, and you have to manually place the points where you check if the time's up. This check does have some overhead, so try not to place it everywhere.

    Please comment if I misinterpreted your question.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?