ホームページ  >  記事  >  php教程  >  php中管道pipe的用法

php中管道pipe的用法

WBOY
WBOYオリジナル
2016-06-06 19:50:542157ブラウズ

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 php中管道pipe的用法: 大家都知道linux中shell提供的pipe(管道)功能吧,或许你还不知道他的全名,那你用没用过这样的命令: cat INSTALL | more 这种类型的命令用法就是利用管道的技术着出来的,与重新定

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

    php中管道pipe的用法:

    大家都知道linux中shell提供的pipe(管道)功能吧,或许你还不知道他的全名,那你用没用过这样的命令:

    cat INSTALL | more

    这种类型的命令用法就是利用管道的技术着出来的,与重新定向(redirection)是不同的.

    PHP中提供popen函数来打开一个管道:

    int popen(string command,string mode);

    popen()打开一个管道,也就是打开处理文件指针.打开一个管道后,返回一个文件指针,接下来的用法就和普通文件的读写一样了.看看下面吧:

   

    $fp=popen(“/bin/ls -l -FN /ect”,“r”);

    while(!feof($fp))

    echo fgets($fp,4096).“
”;

    pclose($fp);

    ?>

    输出的结果你试试吧.

    管道的应用很广的,比如,我们可以打开一个sendmail的管道来传送电子邮件.利用管道比起用socket更简单易懂.因为利用socket必须懂得如何与sendmail作交握,而管道动作则预处理普通文件没什么区别了.看看下面的程序你就明白了,这个程序会传送一封电子邮件给yqqfgq@china.com:

   

    $fp=popen(“/usr/sbin/sendmail yqqfgq@phpzixue.cn”,“w”);

    $message=“php自学网:-)”;

    fputs($fp,“Subject:$subjectn”);

    fputs($fp,“From:yqqfgqn”);

    fputs($fp,“Reply-to:yqqfgq@phpzixue.cn”);

    fputs($fp,$message);

    fputs($fp,“

    .

    ”);

    pclose($fp);

    ?>

php中管道pipe的用法

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。