Перенос строки при использовании fgetc
Primary tabs
С.Хольцнер в книге "PHP в примерах" (стр.234) отмечает, что при использовании функции fgetc (посимвольное чтение файлов), необходимо заменять символ окончания строки "/n" на тег
<br>
1. Поясните, пожалуйста, почему. Символ "/n" не распознаётся функцией, как перенос?
2. Почему именно для fgetc?
3. Всегда ли нужно делать это вручную с помощью оператора if (как представлено в примере на стр. 235)?
<?php $handle = fopen ("file.txt", "rb"); while ($char = fgetc($handle)) { if ($char == "\n") { $char = "<br>"; } echo $char; } fclose ($handle);
Спасибо!
- Log in to post comments
- 4786 reads
vedro-compota
Wed, 04/26/2017 - 11:57
Permalink
в чем там дело
У Хольцнера так:
Дело в том, что символ переноса строки из текстовых файлов не отображается в браузере.
А потому Хольцнер показывает, что при выводе такого символа на страницу имеет смысл вообще заменить его на подходящий тэг (переноса строки).
_____________
матфак вгу и остальная классика =)
vedro-compota
Wed, 04/26/2017 - 12:06
Permalink
Символ "/n" не распознаётся
во-первых, это символ "\n" (обратный слэш а не прямой).
--- функция fgetc лишь читает символы из файла, она читает их "как есть". В её задачу входит только загрузка очередного символа из текстового файла в память программы.
_____________
матфак вгу и остальная классика =)
vedro-compota
Wed, 04/26/2017 - 12:22
Permalink
Почему именно для fgetc?
просто пример с fgetc.
если ситуация как в коде выше -- то да, всегда.
_____________
матфак вгу и остальная классика =)