php最大执行时间实际测量的是什么?

php最大执行时间实际测量的是什么?,php,max-execution-timeout,Php,Max Execution Timeout,我有一个网页,上面有一个按钮,当点击它时,执行一个php函数 当用户单击它时,返回页面需要51081毫秒。其中51376ms被我的Firefox开发者工具中的“网络”选项卡归类为“等待” 在我的php.ini文件中声明的最大执行时间是30。我也可以在我的phpinfo文件中看到这一点 我的问题是,为什么我的脚本在30秒后没有超时?实际测量的最大执行时间是多少 编辑以包含代码 public function getSlotsByUser (Request $request) { $eve

我有一个网页,上面有一个按钮,当点击它时,执行一个php函数

当用户单击它时,返回页面需要51081毫秒。其中51376ms被我的Firefox开发者工具中的“网络”选项卡归类为“等待”

在我的php.ini文件中声明的最大执行时间是30。我也可以在我的phpinfo文件中看到这一点

我的问题是,为什么我的脚本在30秒后没有超时?实际测量的最大执行时间是多少

编辑以包含代码

public function getSlotsByUser (Request $request) {

    $event_id = $request->event_id;
    $user_id = substr($request->user, 4);

    $event = Event::find($event_id);

    $user = User::find($user_id);

    $slots = TimeSlot::where('event_id',$event_id)->get();

    $userSlots = $user->slots;

    foreach($userSlots as $userSlot) {

       $guest = Guest::where('slot_id',$userSlot->id)->where('user_id',$user->id)->first();

       if($guest) {
            $userSlot->guest_id = $guest->id;
            $userSlot->guest_name = $guest->name . ' ' . $guest->surname;
        }
        else {
            $userSlot->guest_id = NULL;
            $userSlot->guest_name = NULL;
        }

        $userSlotIds[] = $userSlot->id;

    }

    $days = new DatePeriod(
         new DateTime($event->start_time),
         new DateInterval('P1D'),
         (new DateTime($event->end_time))->modify('+1 day')
    );

    return view('admin.calendar',compact('event','slots','user','userSlots','userSlotIds','days'));

}
我知道哪些部分用雄辩的语言表示查询。我的代码也是如此

php执行

php执行

数据库查询

数据库查询

数据库查询

php执行。。。等等

有人能给我解释一下“引擎盖下”发生了什么吗?

说:

最大执行时间仅影响脚本本身的执行时间。在确定脚本已运行的最长时间时,不包括在脚本执行之外发生的活动(如使用system()的系统调用、流操作、数据库查询等)上花费的任何时间。这在Windouws上是不正确的,因为测得的时间是真实的

因此,在Linux上,只计算用于执行php代码的时间


网络选项卡中的
等待
只是告诉您,到目前为止,您没有收到Web服务器的任何响应。

您确定代码中没有调用
设置时间限制
?是的,我绝对确定。谢谢,我已经展开了我的问题,因为我仍然不确定到底发生了什么。@jordan好的:
Event::find
。。。都是数据库查询。我不知道有多少用户在
$userSlots
中,但这些数据库查询可能总共从
21376
ms到
50000
ms。因此,php脚本的实际执行时间可能少于秒。您应该检查您使用的DB库是否有一些评测选项,以查看每个脚本发出多少查询以及它们总共持续多长时间;php执行,php执行,数据库查询,数据库查询,数据库查询,php执行?我的代码中真的有6个php执行吗?@jordan你不能把php执行数作为垃圾的数量。因为一方面,每个
::where
调用在查询db之前和查询db之后执行更多的php代码行,您应该如何定义垃圾。想象一下,更像是你必须在家里做一些事情,而有人正在测量你需要的时间。大部分时间都发生在你的房子里(php),但有时你需要去硬件商店(db query)取东西,测量时间的人会在你离开房子的正门时暂停测量。