【问题标题】:Set time for execution of php script with exec() instead of waiting for fgets(STDIN)使用 exec() 设置执行 php 脚本的时间,而不是等待 fgets(STDIN)
【发布时间】:2013-05-11 16:46:44
【问题描述】:

(我是法语,很抱歉可能出现语言错误)

我正在尝试在我的网站上使用 exec() 函数启动自动播放脚本 (https://code.google.com/p/open-airplay/source/browse/trunk/PHP/airplay.php?r=20)。 (脚本的目标是将图片从 pc 发送到兼容 airplay 的设备以显示在屏幕上)

效果很好,但图片在几秒钟后消失了。最初,脚本等待用户操作的函数:

echo 'Press return to quit';
fgets(STDIN);

然后关闭脚本。

我们可以强制脚本执行到一个精确的持续时间吗?或者用 php 中的另一个命令关闭脚本?

谢谢你的帮助,

【问题讨论】:

    标签: php bash time stdin


    【解决方案1】:

    fgets(STDIN); 替换为简单的sleep(10); 就好像有人在输入内容之前等待了10 秒并退出脚本。

    [编辑]评论中提出的问题

    $options = getopt("t::"); // Read for an optional value "-t" from the CLI
    if (array_key_exists('t', $options)) {
      sleep((int) $options['t']);
    }
    else {
      sleep(10); //Default value
    }
    

    【讨论】:

    • 谢谢,它的作品!但是,我可以在脚本调用时使用参数更改 sleep(p) 的值吗?以字符 -t [time] 为例,无需修改脚本的所有代码?
    • 非常感谢!太棒了 ! =D
    猜你喜欢
    • 1970-01-01
    • 2011-01-08
    • 1970-01-01
    • 2016-05-23
    • 1970-01-01
    • 2012-10-09
    • 2015-08-11
    • 2010-10-08
    • 1970-01-01
    相关资源
    最近更新 更多