[PHP-users 12171] Re: PHPでパイプ

KAWAI,Takanori php-users@php.gr.jp
Wed, 11 Dec 2002 11:27:03 +0900


川合孝典です。

----- Original Message -----
From: "ml" <ml@naviokinawa.com>
To: <php-users@php.gr.jp>
Sent: Wednesday, December 11, 2002 10:50 AM
Subject: [PHP-users 12168] Re: PHPでパイプ


(中略)
> >パイプって、標準出力を次のコマンドの標準入力として渡すためにあるわけで、
> >次のコマンドがないのに、なぜパイプを使うのかよくわかりません。
>
> 私も次のコマンドがないのになぜ?って思ってました(汗)
> Perlはそれでも動いてくれるんですね。。
そうではなくってPerlでは、あの書き方がパイプを利用する場合の
書き方なんです。

perldoc -f open から引用すると、この部分。
<引用>
If the filename begins with "'|'", the filename is interpreted
as a command to which output is to be piped, and if the filename
ends with a "'|'", the filename is interpreted as a command
which pipes output to us.
</引用>
<テキトウな訳>
ファイル名が'|'で始まると、ファイル名は出力がパイプされるコマンド
として解釈され、ファイル名が'|'で終わるとファイル名は私たちに
出力をパイプするコマンドとして解釈されます。
</テキトウな訳>

丸ごと結果を取り出すだけなら、PerlでもPHPでも重松さんも
書かれた通り、

$FP = `/usr/bin/perl --help`;

は使えます。
パイプを使いたいということでは、何か1行単位に処理をしたい
ということなんだと思いますが、違う言語ですから当然、やり方が
違う場面もあるということだけでしょう。

===================================================
川合 孝典 (Hippo2000)
   DBI日本語メーリングリスト管理人、Kansai.pm所属
   kwitknr@cpan.org GCD00051@nifty.ne.jp
   http://member.nifty.ne.jp/hippo2000、http://www.hippo2000.info/
perldocの日本語化ならperldocjp:もちろん参加者募集中!
  http://sourceforge.jp/projects/perldocjp
===================================================