Читання файлу функцією file get content PHP

Читання файлу або URI - звичайна практика, і, якправило, це вигідно робити відразу і в повному обсязі. Порядкове або посимвольного читання має істотне значення, але причин для цього не так багато, і цим користуються в особливих випадках.

file get content php

Функція file get content PHP виконує читання в рядок від початку і до кінця файлу. Особливо цікаво її використання, коли в якості файлу виступає адресу ресурсу в Мережі (URI).

опис функції

Функція file get content PHP отримує в якостіпараметра ім'я файлу або URI і видає рядок. В даному прикладі наведено код використання. Звернення до функції відбувається чотири рази. Перший раз читається файл, який містить просто текст, другий раз читається інший файл, який, крім тексту, має HTML-теги.

file get content php

Наступна пара викликів здійснюється черезперетворення кодування. Це не завжди необхідно, але у випадках, коли на виході утворюються дивні символи, слід застосувати перетворення отриманої після читання рядки, і російські літери будуть видні. Приклад file get contents PHP в браузері буде відображено так, як показано нижче.

file get content php

Перші два виклики функції не займаються перекладомкодування в потрібний формат, тому російські літери не відображаються. Вміст обох файлів (local-1.txt і local-2.txt) однакове. Природно, в обох файлах є переклади рядка, але браузер їх не розбирає. Функція file get content PHP читає все як є, але в другому файлі є потрібні теги, і рядки відображаються як потрібно, а не в один рядок. Дана обставина не суттєво, тому як за загальним правилом файл читається як є, і наявність в ньому тегів актуально, коли читається HTML-сторінка, а там є все необхідне. Однак ця обставина, особливо факт можливої ​​невідповідності кодування, важливо знати.

Інші параметри функції

Якщо потрібно по-особливому щось прочитати,наприклад, тільки частина файлу, або починати з якоїсь конкретної позиції в ньому, можна використовувати параметр зсуву і кількості. Однак функція file get content PHP в деяких випадках може припуститися помилки, прочитавши не те, не в тій кількості чи не з тієї позиції. Якщо читається не локальний файл, то заданий зсув і кількість читаних байт будуть дійсні. У всіх інших випадках краще проконтролювати результат, що видається функцією. Можна задати параметр пошуку файлу в папці include path і параметр ресурсу для читання потокових контекстів.

file get contents php приклад

Послідовність параметрів така:

  • ім'я файлу;
  • параметр пошуку;
  • параметр ресурсу;
  • зміщення;
  • кількість.

Не бажано використовувати параметр пошуку, хочав деяких випадках це доцільно. При читанні як локальних, так і віддалених файлів або URI краще завжди знати, що читається і звідки. Якщо в URI є спеціальні символи, наприклад пробіл, URI слід кодувати функцією urlencode.

Читання файлу віддалено

Тут функція використовує аналогічно. Немає ніяких істотних відмінностей, за винятком тільки одного обставини: при перших двох викликів PHP file get contents помилка відсутня.

file get content php

У третьому виклику читається сторінка сайту. Виводиться ця сторінка в поточне місце браузера, в якому діють цілком конкретні CSS-правила, але ніяк не правила відкривається сайту. Тому результат коду, який читає URI, не відповідатиме дійсності. Втім, читання зазвичай переслідує мети парсинга, а не відображення їх в місці читання.

file get content php

Але ця обставина слід мати на увазі. Читання URI - це далеко не зміст сайту, а тільки конкретну адресу.

Функція читання та парсинг

При неправильному імені читаного файлу або URIможлива помилка. Це легко відстежити по відсутності результату читання. При неправильних інших параметрах функція генерує логічне значення FALSE. Звичайне використання функції читання цілком зв'язується з оптовим завданням параметрів сайту. Наприклад, читання файлу конфігурації, даних про користувачів або файлу налаштувань. У всіх таких випадках:

  • результат точно визначений;
  • структура читаються даних теж.

php file get contents помилка

При читанні URI заздалегідь важко передбачити, що іяк прочитає, і прочитає чи взагалі. Важливо чітко уявляти, що далеко не завжди прочитане слід виводити в браузер. Одна справа обробка інформації, інша справа спроба контролювати процес обробки HTML-вмісту без спеціальних засобів і заходів в браузері.