Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何经常检查PHP中的更改?_Php_Input_Server_Stream_Reload - Fatal编程技术网

如何经常检查PHP中的更改?

如何经常检查PHP中的更改?,php,input,server,stream,reload,Php,Input,Server,Stream,Reload,我认为我对php工作原理的一般理解是有缺陷的。我在某个地方读到php一行一行地工作。然而,当使用诸如php://input,这使我能够实时不断地检查变化。但是如果php一行一行地工作,这怎么可能呢?另外,如果我使用以下方法检查变量更改 if(isset($\u POST[“url”],$\u POST[“message”])){ 然后,一旦服务器接收到$\u POST变量,它将执行if条件。同样,如果在脚本运行中只检查了一次if条件,这是如何发生的?显然php不是逐行执行的 现在进入我真正的问

我认为我对php工作原理的一般理解是有缺陷的。我在某个地方读到php一行一行地工作。然而,当使用诸如php://input,这使我能够实时不断地检查变化。但是如果php一行一行地工作,这怎么可能呢?另外,如果我使用以下方法检查变量更改

if(isset($\u POST[“url”],$\u POST[“message”])){

然后,一旦服务器接收到$\u POST变量,它将执行if条件。同样,如果在脚本运行中只检查了一次if条件,这是如何发生的?显然php不是逐行执行的

现在进入我真正的问题。我如何在PHP中获得其他方面的恒定更改检查?比如,在我刚才展示的if语句中,我有一个变量更改为true。当这个变量为true时,脚本中稍后的另一个if语句应该触发。但是,它不会触发,因为我假设PHP的逐行性质是preven阻止它不断检查此变量的状态

也许我正走在一条复杂的切线上,但我只需要把事情弄清楚。谢谢

编辑:我正在使用webhooks制作messenger机器人

$input = json_decode(file_get_contents('php://input'), true);  

这就是我在流中侦听的方式。

webhook是一个HTTP调用,因此您的POST数据不会“更改”,因为如果您的数据更改,则需要一个新的HTTP POST,该POST将由新的PHP代码执行来处理。因此,编写逻辑来查找POST数据中的更改实际上是不相关的,因为这些值是传递到您的代码中


除非我误解了你……

不,PHP不是一种解释语言,它不能逐行工作;每个文件在包含时都被编译成字节码,然后按顺序处理。为什么PHP需要不断检查?它是一种服务器端语言,所以唯一真正的方法是不断使用AJAX调用。为什么不编写ome javascript执行您想要的操作,然后让PHP在完成后对其进行处理POSTs@MarkBaker这意味着什么?如果它是按顺序处理的,那么它如何能够不断检查i/o流?这不是我的cloud9服务器上发生的事情?我让服务器不断运行,并且只有在$\u POST['url']设置变量将触发条件。这意味着它正坐在那里等待变量设置?我保证我不会重新加载页面或重新启动执行。脚本完成执行后,PHP是否会自动循环回索引的开头?它使用facebook的graph api和Webhook!它不接受用户输入!这是错误的通过他们的api发送用户消息,并且似乎能够不断地检查它,而且,如果webhooks不不断地检查更新,它如何与php一起工作?不会让senseI认为你误解了我…我保证我不会执行脚本。我所拥有的只是我在原始帖子中向你展示的if-isset条件。$\u帖子变量是从另一个服务器php脚本的curl_exec设置的。当执行另一个服务器脚本时,它会向我的cloud9服务器发送一个带有url和消息键的数组。一旦发生这种情况,cloud9服务器就会执行if-isset语句。这意味着它正在等待变量设置??对不起,自动填充我在朋友的电脑上