我以前总是在我的控制台命令中使用readline
,但今天我遇到了fread
和fgets
函数,我的问题是:使用这两种方法有什么不同:
// first
$inputLine = readline();
// second
$inputLine = fgets(STDIN);
他们俩都做得差不多,不是吗?
我能想到的唯一可能的区别就是readline()
没有参数,只能默认读取STDIN
的输入,而fgets()
可以读取任何resource
。因此,换句话说,readline()
是fgets
与第一个预定义参数的同义词,例如fprintf()
和printf()
。
考虑以下:
fprintf(STDOUT, "hello!");
printf("hello!);
这在php标准库中很常见。