Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP的fwrite函数问题

PHP的fwrite函数问题

WBOY
WBOYasal
2016-06-06 20:28:041419semak imbas

<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

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

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn