php - 当 PHP 等待用户输入时,如何定期调用函数?
问题描述
请注意,我不希望使用任何臃肿的库,例如“ReactPHP”。我只是想知道如何在实际的 PHP 代码中做到这一点。
我有什么相当于这段代码:
echo 'Hello' . PHP_EOL;
$input = fgets(STDIN);
echo 'man' . PHP_EOL;
function test()
{
// do stuff
}
它打印“Hello”,等到用户按下 Enter,然后打印“man”。test() 永远不会被调用。
我希望这样做,以便在循环中调用 test(),在每次调用之间等待 5 秒。这本身不是问题,但是让 PHP (7.4.1) 在等待用户输入的同时实际执行该逻辑。它不能在 $input 行之前或之后完成,但必须在该行“内部”完成......这意味着 fgets() 或包装函数必须以某种方式支持这一点?
我已经看到过旧的堆栈问题,其中有非常奇怪的“解决方案”。相反,我希望有一种干净、好的方式来做到这一点,我希望现在可以实现。
解决方案
推荐阅读
- javascript - css 动画的问题:相对位置和左侧的值显然不能一起工作
- css - % 缩小后在 HTML 中移动图像?
- javascript - 如何使用 JavaScript 或/和 PHP,检测网站/页面被盗/克隆,然后将阅读器重定向回我的网站
- javascript - do-while 循环和创建警报的问题
- excel - 如何在 VBA 中使用 Selenium 与“保存”对话框交互?
- jhipster - jhipster import-jdl 在 liquibase master.xml 中使用相对路径
- excel - 条件格式每列分别
- mamp-pro - 无法为文档根目录设置正确的远程路径
- tfs - 在 Azure DevOps 中生成一个文件作为发布管道的输出?
- sphinx - 狮身人面像索引不会多个小数字段