Я всегда использовал readline
в моих консольных командах раньше, но сегодня я наткнулся на fread
а также fgets
функции и мой вопрос: в чем разница в использовании этих двух подходов:
// first
$inputLine = readline();
// second
$inputLine = fgets(STDIN);
они оба делают одно и то же, не так ли?
Единственное возможное различие, о котором я могу думать, состоит в том, что readline()
не принимает аргументов и может только читать входные данные из STDIN
по умолчанию, хотя fgets()
может взять любой resource
читать с. Итак, другими словами readline()
это синоним fgets
с первым предопределенным аргументом, как, например, fprintf()
а также printf()
,
Учтите следующее:
fprintf(STDOUT, "hello!");
printf("hello!);
Это довольно часто встречается в стандартной библиотеке php.
Других решений пока нет …