是否可以使用PHP同时更新屏幕并等待用户输入?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了是否可以使用PHP同时更新屏幕并等待用户输入?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我想编写一个小型管理工具来监督我的服务器进程,我的问题是现在,我怎么能等待用户输入并同时用当前统计数据更新屏幕?甚至可以使用 PHP-CLI,还是有任何技巧可以做到一点,我目前失踪了?

我已经研究过newt和ncurses PECL扩展,但两者似乎都不符合我的需求.

前往libevent http://www.php.net/manual/en/book.libevent.php

您可以在监听控制台的同时运行主循环,其代码大致类似于以下代码

<?PHP   
// you need libevent,installable via PEAR
$forever=true;
$base=event_base_new();
$console=event_buffer_new(STDIN,"PRocess_console");
event_buffer_base_set($console,$base);
event_buffer_enable($console,EV_READ);
while ($forever) {
    event_base_loop($base,EVLOOP_NONBLOCK); // Non blocking poll to console listener
    //Do your video update process
}
event_base_free($base); //Cleanup
function process_console($buffer,$id) {
    global $base;
    global $forever;
    $message='';
    while ($read = event_buffer_read($buffer,256)) {
        $message.=$read;
    }
    $message=trim($message);
    print("[$message]\n");
    if ($message=="quIT") {
        event_base_loopexit($base);
        $forever=false;
    }
    else {
        //whatever.....
    }
}

脚本宝典总结

以上是脚本宝典为你收集整理的是否可以使用PHP同时更新屏幕并等待用户输入?全部内容,希望文章能够帮你解决是否可以使用PHP同时更新屏幕并等待用户输入?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。