相关疑难解决方法(0)

使用PHP中的实时输出运行进程

我正在尝试在网页上运行一个将实时返回其输出的进程.例如,如果我运行'ping'进程,它应该在每次返回一个新行时更新我的​​页面(现在,当我使用exec(命令,输出)时,我被迫使用-c选项并等待进程完成以查看在我的网页上输出).有可能在PHP中这样做吗?

我也想知道当有人离开页面时,杀死这种过程的正确方法是什么.在"ping"过程中,我仍然可以看到系统监视器中运行的进程(有意义).

php linux apache real-time process

67
推荐指数
7
解决办法
8万
查看次数

PHP:如何将信息返回到等待的脚本并继续处理

假设存在两个脚本Requester.php和Provider.php,并且Requester需要从Provider处理并向其发出http请求(Provider.php?data ="data").在这种情况下,Provider快速找到答案,但维护系统必须在整个数据库中执行各种更新.有没有办法立即将值返回给Requester,然后继续在Provider中处理.

Psuedo Code

Provider.php 
{
   $answer = getAnswer($_GET['data']);
   echo $answer;
   //SIGNAL TO REQUESTER THAT WE ARE FINISHED
   processDBUpdates();
   return;
}
Run Code Online (Sandbox Code Playgroud)

php

6
推荐指数
1
解决办法
3441
查看次数

从 php 执行 bash 脚本并立即输出回网页

我有一组 bash 和 Perl 脚本

  1. 开发在 Linux Box 上部署所需的目录结构
  2. (可选)从 svn 导出代码
  3. 从这个源构建一个包

这在终端上运行良好。现在,我的客户请求此流程的 Web 界面。

例如,某些页面上的“创建新包”按钮将一一调用上述步骤,并将输出作为脚本回显返回给用户,而不是在整个脚本执行时。

是否可以将 bash 脚本的即时输出发送到通过程序执行函数(系统、exec、passthru ...或任何其他适合此流程的东西)调用它的网页或 php 脚本?

优雅为何要这么做?

在做这样的事情时我应该采取哪些安全预防措施(如果可能的话)?

编辑 经过一番搜索,我找到了部分解决方案,但仍然无法正常工作:

$cmd = 'cat ./password.txt|sudo  -S  ./setup.sh ';

$descriptorspec = array(
        0 => array("pipe", "r"),  // stdin is a pipe that the child will read from
        1 => array("pipe", "w"),  // stdout is a pipe that the child will write to
        2 => array("pipe", "w") // stderr is a pipe that the child …
Run Code Online (Sandbox Code Playgroud)

php bash perl nonblocking

4
推荐指数
1
解决办法
1243
查看次数

标签 统计

php ×3

apache ×1

bash ×1

linux ×1

nonblocking ×1

perl ×1

process ×1

real-time ×1