popenとは? わかりやすく解説

popen

(PHP 4, PHP 5)
popen — プロセスへのファイルポインタをオープンする

説明

int popen ( string command, string mode )
command で与えられたコマンドを fork() して実行し、そのプロセスへのパイプをオープンします。
fopen() により返されたファイルポインタと同様のものを返しますが、 それは(読み書きのいずれか一方でのみ使われる)片方向ストリームであり、 pclose() によりクローズされなければならないところが異なります。 このポインタは、fgets()fgetss() および fwrite() のいずれかで使うことができます。
エラーが起こった場合 FALSE を返します。
注意: 双方向(two-way)のサポートを求めているのなら、 proc_open() を使用してください。
例 628. popen() の例
<?php
$handle = popen("/bin/ls", "r");
?>


実行すべきコマンドが見つからない場合には、正常なリソースが返されます。 おかしなことと思われるかもしれませんが、これには意味があります。 これによってシェルから返されたエラーメッセージにアクセスすることができるのです。 <?php
error_reporting(E_ALL);

/* Add redirection so we can get stderr. */
$handle = popen('/path/to/spooge 2>&1', 'r');
echo "'$handle'; " . gettype($handle) . "\n";
$read = fread($handle, 2096);
echo $read;
pclose($handle);
?>

注意: セーフモード が有効な場合、 safe_mode_exec_dirの中にある実行プログラムのみ実行可能です。 実際的な理由により、現在、実行プログラムへのパスに ..を 含めることはできません。

警告
セーフモードが有効な場合、コマンド文字列は escapeshellcmd() でエスケープされます。 つまり、echo y | echo x は、echo y \| echo x となります。

pclose()fopen()proc_open() も参照してください。




固有名詞の分類

このページでは「PHP関数リファレンス」からpopenを検索した結果を表示しています。
Weblioに収録されているすべての辞書からpopenを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からpopenを検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「popen」の関連用語

popenのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



popenのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2024 by the PHP Documentation Group.

©2024 GRAS Group, Inc.RSS