首頁 >後端開發 >php教程 >PHP的fwrite函数问题

PHP的fwrite函数问题

WBOY
WBOY原創
2016-06-06 20:28:041431瀏覽

<code>
fwrite(STDOUT , "输入");
$msg = fgets(STDIN);

echo PHP_EOL . $msg . PHP_EOL;</code>

比如我键盘写 aa
$msg 就是 aa
我的问题是,$msg为什么不是 "输入" 或者 "输入aa",
而且为什么程序还会自己停在那里等我输入?
php不是应该直接往下执行的吗?

回复内容:

<code>
fwrite(STDOUT , "输入");
$msg = fgets(STDIN);

echo PHP_EOL . $msg . PHP_EOL;</code>

比如我键盘写 aa
$msg 就是 aa
我的问题是,$msg为什么不是 "输入" 或者 "输入aa",
而且为什么程序还会自己停在那里等我输入?
php不是应该直接往下执行的吗?

1、fgets 得到的是 STDIN 的输入,当然不包括“输入”这个字符串;
2、fgets 读取到换行符、EOF 或者指定长度(默认1K)的字符串时才会停止,随便输入几个字母当然不会停止;
3、PHP 是顺序执行

文件操作的文档
http://php.net/manual/zh/ref.filesystem.php

标准输入输出流的文档
http://php.net/manual/zh/wrappers.php.php

命令行模式开发的文档
http://php.net/manual/zh/features.commandline.php

如果学到了,记得给我打钱。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn