Php/docs/function.popen
来自菜鸟教程
popen
(PHP 4, PHP 5, PHP 7)
popen — 打开进程文件指针
说明
popen
( string $command
, string $mode
) : resource
打开一个指向进程的管道,该进程由派生给定的 command 命令执行而产生。
参数
command
- 命令。
mode
- 模式。
返回值
返回一个和 fopen() 所返回的相同的文件指针,只不过它是单向的(只能用于读或写)并且必须用 pclose() 来关闭。此指针可以用于 fgets(),fgetss() 和 fwrite()。 当模式为 'r',返回的文件指针等于命令的 STDOUT,当模式为 'w',返回的文件指针等于命令的 STDIN。
如果出错返回 false
。
范例
Example #1 popen() 例子
<?php$handle = popen("/bin/ls", "r");?>
如果未找到要执行的命令,会返回一个合法的资源。这看上去很怪,但有道理。它允许访问 shell 返回的任何错误信息:
Example #2 popen() 例子
<?phperror_reporting(E_ALL);/* 加入重定向以得到标准错误输出 stderr。 */$handle = popen('/path/to/executable 2>&1', 'r');echo "'$handle'; " . gettype($handle) . "\n";$read = fread($handle, 2096);echo $read;pclose($handle);?>
注释
Note:
如果需要双向支持,使用 proc_open()。