当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP popen( )用法及代码示例


popen()函数用于打开到用户使用命令参数指定的程序的管道。它返回的文件指针与fopen()返回的文件指针相同,但是本质上是单向的,即只能用于读取或写入。 popen()指针可与fgets(),fgetss()和fwrite()一起使用。由popen()函数启动的文件指针必须用pclose()关闭。该命令和模式将作为参数发送到popen()函数,并且在成功时返回单向文件指针,在失败时返回FALSE。

用法:

popen(command, mode)

使用的参数:
PHP中的popen()函数接受两个参数。


  1. command:它是必填参数,用于指定要执行的命令。
  2. mode:它是一个必需参数,用于指定连接模式,例如readonly(r)或writeonly(w)。

返回值:
它返回的文件指针与fopen()返回的文件指针相同,但是本质上是单向的。

错误和异常:

  1. 由popen()函数启动的文件指针必须用pclose()关闭。
  2. 如果找不到要执行的命令,则popen()函数将返回有效资源。

例子:

Input:$my_file= popen("/bin/ls", "r");
Output:1

Input:$my_file= popen('/executable/gfg.exe', 'r');
        echo "'my_file'; " . get_class($my_handle) . "\n";
        $file_read = fread($my_file, 4192);
        echo $file_read;
        pclose($my_file);
Output:1

以下示例程序旨在说明popen()函数。

程序1:

<?php 
  
// opening a pipe  
$my_file= popen("/bin/ls", "r"); 
?>

输出:

1

程序2:

<?php  
// opening a pipe 
$my_file= popen('/executable/gfg.exe', 'r'); 
  
// returning name of class of an object using get_class() 
  echo "'$my_file'; " . get_class($my_file) . "\n"; 
  
// reading file using fread() 
$filereader = fread($my_file, 4192); 
   echo $filereader; 
  
// closing the pipe 
pclose($my_file); 
?>

输出:

1

相关文章:PHP - pclose( )用法及代码示例

参考:
http://php.net/manual/en/function.popen.php



相关用法


注:本文由纯净天空筛选整理自Shubrodeep Banerjee大神的英文原创作品 PHP | popen() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。