Статьи

Красивые URL: довольно просто!

Когда я писал третье издание « Создайте свой собственный веб-сайт, управляемый базой данных, используя PHP и MySQL» , все еще было приемлемо (хотя, безусловно, немодно) объединить весь код вместе, чтобы сгенерировать веб-страницу в один файл, а затем использовать URL-адрес этого файла для доступа к странице.

PHP перешел на. В наши дни разработчик, который создает веб-сайты таким способом, вряд ли сможет получить работу (за исключением, возможно, того, что платит плохо). Ожидается, что разработчики организуют свой код в несколько файлов, и URL-адреса, содержащие имена файлов, такие как index.php, определенно выходят.

Опытные разработчики будут использовать тщательно созданные фреймворки и конфигурации веб-сервера для преобразования так называемых симпатичных URL-адресов, таких как http://www.example.com/thingy/. Нет .php рекламы того, что сайт построен на PHP, никакого конкретного имени файла нет. URL-адреса, подобные этому, разработаны так, чтобы быть как можно более простыми и запоминающимися.

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

Самым простым способом, который я смог найти для создания красивых URL-адресов, было использование функции, встроенной в каждый веб-сервер, оборудованный PHP: URL-адрес, указывающий на каталог на сервере, автоматически запускает сценарий PHP с именем index.php

Имея это в виду, вот как все примеры в книге, начиная с третьей главы, структурированы:

  • Папка
    Все идет внутри папки, имя которой является единственной видимой частью в URL. Таким образом, если в примере отображаются «thingies», вы должны начать с создания папки с именем thingies, а URL-адрес примера будет http://www.example.com/thingies/
  • Контроллер, index.php
    Когда браузер запрашивает URL-адрес примера, сервер автоматически запускает скрипт index.php, содержащийся в папке. Этот файл называется контроллером и содержит всю логику для обработки запросов браузера и выполнения задач в ответ.
  • Включите файлы, такие как db.inc.php
    Куски кода, которые будут полезны более чем в одном примере, извлекаются из index.php и помещаются в отдельные файлы PHP. Это основной материал для ветеранов PHP, но это полезный метод кодирования, который был рассмотрен гораздо позже в третьем издании, в главе 12. Теперь это в главе 3.
  • Файлы шаблонов, например thingy.html.php
    Как только контроллер (с помощью одного или нескольких включаемых файлов) выполняет всю работу, он должен подготовить веб-страницу для отправки обратно в браузер в ответ. Вместо того, чтобы вставлять весь HTML-код в index.php (что мы и делали в третьем издании книги), четвертое издание использует отдельный файл для кода HTML для каждого типа страниц. Эти файлы шаблонов состоят в основном из чистого HTML; единственный код PHP, который они содержат, предназначен для вывода значений переменных PHP, созданных контроллером. Код в этих файлах очень прост, поэтому их можно передать дизайнерам, которые вообще незнакомы с PHP. Кроме того, использование отдельных файлов позволяет легко генерировать несколько разных типов страниц (то есть несколько разных файлов шаблонов) из одного контроллера.

Все небольшие изменения в подходе, подобные этому, действительно заставляют меня гордиться созданием собственного веб-сайта на основе баз данных с использованием PHP и MySQL, 4-е издание . Раньше я описывал третье издание этой книги, давая начинающим «достаточно веревки, чтобы повеситься».

С четвертым выпуском новички смогут легко пройти этап самоудовлетворения — надеюсь, прямо в хорошо оплачиваемую карьеру разработчика PHP!

Могу поспорить, вам интересно, где код, верно? Чтобы увидеть, как описанная выше техника «симпатичного URL» выглядит в коде, обязательно ознакомьтесь с главой 3, когда мы опубликуем ее в четверг. Или, если вы не можете ждать, возьмите все четыре главы в формате PDF сегодня — бесплатно.