Php вывести файл в браузер

Обновлено: 08.07.2024

От автора: мне всегда было интересно, как работают чужие сайты. Так и хочется подсмотреть код стороннего скрипта, чтоб и себе такой «замутить». Вот только PHP – это серверный язык, поэтому «списать» чужой код не удастся. Но все-таки, как вывести файл PHP?

О чем это я?

Согласен, заголовок статьи больше ориентирован на продвинутых юзеров. Если вы таким не являетесь (пока), я сейчас поясню, почему скрипт PHP просто так не получится «подсмотреть».

Этот программный язык является серверным. То есть, выполняется на стороне сервера (на хостинге), а не на стороне клиента (в пользовательском браузере). Чтобы все это продемонстрировать, я вставлю в HTML несколько строк кода PHP.


Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Теперь сохраним его в файле с расширением .php и откроем в браузере.

Как вывести файл PHP, чтобы «замутить» чужой код

Пока ничего необычного. Но теперь давайте просмотрим разметку страницы в браузере:

Как вывести файл PHP, чтобы «замутить» чужой код

В ней мы не увидим код скрипта, поэтому вывести файл PHP стороннего ресурса не удастся, если только у вас нет доступа к его серверу. Что мы и доказали путем эксперимента .

А если надо?

Вы, как владелец собственного ресурса, можете предоставить своим пользователям доступ к определенным файлам. Для этого нужно отобразить их содержимое в браузере. Чем мы и займемся.

Чтобы реализовать данное решение, придется выполнить несколько операций:

Считать его содержимое в буфер.

Вывести содержимое на экран.

Как вывести файл PHP, чтобы «замутить» чужой код


Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Так можно в PHP вывести содержимое текстового файла, картинку. Но код скрипта или разметку страницы точно не получится. Проверено на себе .

Отображаем скрипт

Немного «подровняем» предыдущий пример с помощью функции htmlspecialchars(), которая преобразовывает весь программный код в «читаемый» для браузера:

Как вывести файл PHP, чтобы «замутить» чужой код

А можно вообще обойтись всего несколькими строчками. Для этого нам понадобится функция file_get_contents():

$h = htmlspecialchars ( file_get_contents ( "sample_html.php" ) ) ;

Как вывести файл PHP, чтобы «замутить» чужой код

Но перед тем как вывести файлы из папки PHP, хотелось бы сделать «допилинг» предыдущего примера. Чтобы код скрипта отображался на экране построчно, нужно все содержимое файла преобразовать в массив. Воспользуемся функцией file():

Как вывести файл PHP, чтобы «замутить» чужой код

Получаем имена файлов

Теперь с помощью PHP выведем список файлов. Так как я по своей натуре личность ленивая, то использую самый короткий метод без всяких там функций типа opendir():

Как вывести файл PHP, чтобы «замутить» чужой код

В примере для получения имен файлов мы использовали функцию glob(). Она осуществляет поиск согласно шаблону, который передается ей в качестве обязательного параметра.

В качестве необязательных аргументов данная функция принимает различные флаги. Например, с помощью флага GLOB_NOSORT можно отключить сортировку по алфавиту, применяемую функцией к элементам возвращаемого массива.

Ну, на этом и закончим. Вывести список файлов в папке PHP мы научились, отображать содержимое скриптов тоже. Думаю, пока я удовлетворил ваше любопытство .


Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

Читайте также: