3 回答
TA贡献1886条经验 获得超2个赞
PHP 中的 popen() 函数
popen() 函数打开进程文件指针。
popen(command,mode)
参数说明
command 必需。规定要执行的命令。
mode 必需。规定连接模式。 可能的值:
r: 只读。
w: 只写 (打开并清空已有文件或创建一个新文件)
打开一个指向进程的管道,该进程由派生指定的 command 命令执行而产生。
返回一个和 fopen() 所返回的相同的文件指针,只不过它是单向的(只能用于读或写)并且必须用 pclose() 来关闭。此指针可以用于 fgets(),fgetss() 和 fwrite()。
若出错,则返回 false。
例如:
<?php
$file = popen("/bin/ls","r");
//一些要执行的代码
pclose($file);
?>
TA贡献1943条经验 获得超7个赞
1、执行外部程序。语法: string exec(string command, string [array], int [return_var]);返回值: 字符串函数种类: 操作系统与环境内容说明本函数执行输入 command 的外部程序或外部指令。它的返回字符串只是外部程序执行后返回的最后一行;若需要完整的返回字符串,可以使用 PassThru() 这个函数。要是参数 array 存在,command 会将 array 加到参数中执行,若不欲 array 被处理,可以在执行 exec() 之前呼叫 unset()。若是 return_var 跟 array 二个参数都存在,则执行 command 之后的状态会填入 return_var 中。值的注意的是若需要处理使用者输入的资料,而又要防止使用者耍花招破解系统,则可以使用 EscapeShellCmd()。相关函数:system() PassThru() popen() EscapeShellCmd()
TA贡献1827条经验 获得超8个赞
proc_open 用这个也可,
<?php
$handle = popen("tail -f /etc/httpd/logs/access.log 2>&1", 'r');
while(!feof($handle)) {
$buffer = fgets($handle);
echo "$buffer<br/>\n";
ob_flush();
flush();
}
pclose($handle);
?>
- 3 回答
- 0 关注
- 212 浏览
添加回答
举报