;
lt;/BODY gt;
lt;/HTML gt;
Читання символів: fgetc
Часто потрібне вважати з файлу не цілий рядок, а окремий символ. Для цього призначена функція fgetc. Нижче наведено приклад демонструє використання цієї функції для посимвольного читання і відображення вмісту файлу. Слід звернути увагу, що символ кінця рядка замінюється на тег lt; BR gt;.
посимвольного читання файлу
lt; BODY gt;
lt; HEAD gt;
lt; TITLE gt;
lt; CENTER gt; lt; Hl gt; Посимвольного читання файлу lt;/Н1 gt;
lt ;? php
$ handle=fopen ( file, txt raquo ;, rb ) while ($ char=fgetc ($ handle))
{($ char == n )
{
$ char= lt; BR gt; raquo ;;
} $ char;
} ($ handle);
lt;/CENTER gt;
lt;/BODY gt;
lt;/HTML gt;
Двійкове читання файлу: fread
Читати вміст файлу необов'язково по рядках або символам. Дані з файлу можуть бути прочитані в будь-якому необхідному обсязі за допомогою функції fread. Функція fgets розглядає файли як текстові, а функція fread розглядає їх як двійкові, що не обробляючи спеціальним чином, кінці рядків і не виконуючи ніяких інших перетворень даних - файл вважається простою послідовністю байт. Синтаксис функції fread наведений нижче: fread (resource handle, int length). [21]
Функція зчитує до length байт з файлу, заданого своїм дескриптором handle. Читання припиняється, якщо досягнуто кінець файлу, або якщо лічено задану кількість байт. В операційній системі Windows для використання функції fread файл повинен бути відкритий в двійковому режимі ( rb ). Так як додавання режиму b не має негативного ефекту в інших операційних системах, то має сенс використовувати його завжди з метою сумісності:
lt ;? php
$ handle=fopen ( file. txt1 laquo ;, rb );
? gt;
За допомогою fread можна вважати весь файл цілком в один рядок. Для визначення фактичного розміру файлу використовується функція file size:
lt ;? php
$ handle=fopen ( file. txt raquo ;, rb );
$ text=fread ($ handle, filesize ( file. txt ));
? gt;
Після виконання цього коду файл буде лічений в змінну $ text. Якщо при виконанні виникне якась помилка, то змінна буде містити, порожній рядок. Для перетворення символів кінців рядків в теги lt; BR gt; використовується функція strreplace:
lt ;? php
$ handle=fopen ( file. txt raquo ;, rb );
$ text=fread ($ handle, filesize ( file. txt ));
$ br_text=str_replace ( n raquo ;, lt; BR gt; raquo ;, $ text);
? gt;
Все, що залишається зробити після цього - вивести перетворений текст за допомогою функції echo і закрити файл, що і продемонстровано нижче.
Читання файлу за допомогою fread
lt; HTML gt;
lt; HEAD gt;
lt; TITLE gt;
lt; BODY gt;
lt; CENTER gt; lt; H1 gt; Читання файлу за допомогою fread lt;/Н1 gt;
lt ;? php
$ handle=fopen ( file. txt raquo ;, rb );
$ text=fread ($ handle, filesize ( file. txt ));
$ br_text=str_replace ( n raquo ;, lt; BR gt; raquo ;, $ text); $ br_text; ($ handle);
? gt;
lt;/CENTER gt;
lt;/BODY gt;
lt;/HTML gt;
Читання файлу цілком: file_get_contents
У попередньому прикладі для зчитування файлу цілком використовувалося кілька викликів функцій. Того ж результату можна добитися і більш простим способом - використовуючи функцію file_get_contents. В якості єдиного параметра їй передається шлях до файлу, а в результаті повертається вміст файлу у вигляді рядка - не потрібно навіть використання дескриптора файлу. Нижче приклад показує використання цієї функції.
Читання вмісту файлу за допомогою file_get_contents
lt; HTML gt;