PHP,无需等待执行即可将控制发送到另一个代码

时间:2018-08-27 07:39:06

标签: php redirect routing

我想写某种路由器。但是目标代码执行时间很长,我不想让该路由器等待结果。 让我用这个小代码解释一下:

我有这个Router.php

<?php
   if ($_GET['to'] == 'A') require "A.php";
   else  require "B.php"
?>

现在是A.php:

<?php
   sleep(10);
?>

现在我有两个不同的问题:

1-使用参数to = A调用Router.php后,我的路由器代码将等待A.php吗?因为它必须等待A.php的响应。所以我想知道即将到路由器的下一个请求将等待还是等待仅在A.php端?

2-是否有比使用require“ A.php”在代码之间进行路由和切换控制更好的解决方案?

请帮助

1 个答案:

答案 0 :(得分:0)

  

我的路由器代码会等待A.php吗?


  

所以我想知道进入路由器的下一个请求将等待还是等待仅在A.php端?

所有请求都相互独立。

下一个请求到来时,将创建并执行新的路由器进程。


  

有没有比使用require“ A.php”在代码之间进行路由和切换控制更好的解决方案了?

我认为您不必编写路由器。因为packagist上有许多不错的路由器组件,例如fast-routeklein

您可以仅通过composer安装它。

使用像Slim这样的MicroFramework也是一种好方法。


对不起,我的英语不好,希望能对您有所帮助。