我注意到php中的fgets(STDIN)有点问题。
我有这样的代码:
if($fd = fopen($filename, "a")){
$message = fgets(STDIN);
$message = $message.":";
echo $message;
//fwrite($fd, $message);
fclose($fd);
}我试着在我的文本文件的末尾插入示例:
helloWorld但我一直都有:
helloWorld
:不是:
helloWorld:stdin会自动换行吗?如何删除这个自动跳转?
发布于 2013-05-15 17:01:46
使用stream_get_line而不是fgets:
if($fd = fopen($filename, "a")){
$message = stream_get_line(STDIN, 1024);
$message = $message.":";
echo $message;
//fwrite($fd, $message);
fclose($fd);
}也可以使用rtrim函数删除行尾:
if($fd = fopen($filename, "a")){
$message = fgets(STDIN);
$message = rtrim($message, "\n\r") . ":";
echo $message;
//fwrite($fd, $message);
fclose($fd);
}https://stackoverflow.com/questions/16560755
复制相似问题