#1. PHP отдаёт HTML: страница с текущей датой - практический урок
Primary tabs
В этом уроке разберём, чем статическая страница отличается от PHP-скрипта, и увидим главную идею веб-разработки на PHP: скрипт выполняется на сервере, а браузер получает уже готовый HTML.
Немного теории
Полезно перед началом вспомнить, как PHP взаимодействует с сервером и клиентом: если браузер запросил обычный файл, веб-сервер просто отдаёт его как есть, а если запрос пришёл на .php-скрипт — сервер сначала передаёт его PHP на выполнение, и клиенту уходит только результат.
Про то, как связаны PHP и HTML, читайте в п. 1.2 нашего учебника.
Как запустить примеры
Достаточно одного из двух вариантов:
- Скачать наш учебный репозиторий и запустить docker-окружение — командой
make docker.start.allиз папкиlessons-v1(если вы не работали с make — посмотрите наш курс по Makefile). Урок откроется по адресуhttp://localhost:19791/lessons/lesson01-html-date/ - Либо разложить файлы урока в собственный виртуальный хост, если вы уже настраивали PHP с веб-сервером.
Шаг 1. Статическая страница
Положим в одну папку два файла. Первый — hello.html, обычная страница:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Привет</title> </head> <body> <h1>Привет!</h1> <p>Это обычная статическая страница.</p> </body> </html>
Откройте её в браузере, для нашего docker-окружения адрес такой: http://localhost:19791/lessons/lesson01-html-date/hello.html
Сервер отдал файл ровно в том виде, в каком мы его записали. Содержимое такого файла всегда одинаково — поэтому такие страницы называют статическими.
Шаг 2. Страница, которую собирает PHP
Второй файл — index.php, в той же папке. Разметка та же, но дату и время выводит PHP:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Привет из PHP</title>
</head>
<body>
<h1>Привет!</h1>
<p>Сейчас на сервере:</p>
<p><?php echo date('d.m.Y H:i:s'); ?></p>
</body>
</html>
Строка 'd.m.Y H:i:s' — это формат: какие части даты и времени вывести и как именно, подробно описано в документации функции date().
Откройте адрес http://localhost:19791/lessons/lesson01-html-date/ и обновите страницу несколько раз — время будет меняться. Значит, при каждом запросе сервер заново выполняет скрипт и формирует новый ответ. Такие страницы называют динамическими: их содержимое собирается в момент запроса.
Главное наблюдение: что видит браузер
На динамической странице нажмите Ctrl+U («исходный код страницы»). Вы увидите обычный HTML — и никакого PHP-кода. Например, вместо нашей PHP-вставки в коде страницы будет уже готовая строка вида:
<p>26.10.2026 19:12:05</p>
То есть браузер вообще не знает о существовании PHP: он получает уже готовый HTML. Запомните это свойство серверного языка — оно будет важно во всех следующих уроках.
Итоги
- статическая страница (файл
.html) — сервер отдаёт файл как есть; - динамическая (скрипт
.php) — сервер сначала выполняет код, а клиенту уходит то, что напечатал скрипт (обычно HTML); - PHP-код в браузер не попадает: в «исходном коде страницы» виден только результат работы скрипта.
В следующих уроках научимся передавать серверу данные — через GET-параметры в адресе страницы.
- Log in to post comments
- 12 reads