PHP的fwrite函数问题

原创
2016-06-06 20:28:04 976浏览


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

echo PHP_EOL . $msg . PHP_EOL;

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

回复内容:


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

echo PHP_EOL . $msg . PHP_EOL;

比如我键盘写 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核实处理。