Единой точной входа в ваше приложение является контроллер запросов.
Давайте создадим новую директорию в которой будет содержаться наш тестовый проект. Также нужно определить точку входа, которая будет принимать все запросы. В папке проекта создадим файл index.php. Именно этот файл и будет служить точкой входа. Некоторые разработчики создают файл index.php в корневой директории. Данный подход также используется в некоторых фреймворках. Давайте разберем, почему так делать не нужно.
Так как index.php является точкой входа в наше приложение, данный файл должен находиться в каталоге веб сервера. Не сектрет что веб сервер так же имеет доступ ко всем подкаталогам. Следовательно директории с исходным кодом, которые лежат в папке проекта на одном уровне с index.php, становятся доступны для веб сервера. Один из вариантов решения данной проблемы - ограничить доступ к подкаталогам, путем правильной кофигурации сервера. Но иногда не все идет согласно нашему плану и в случае неправильной настройки доступа к поддиректориям, пользователю может быть доступен исходный код проекта. Думаю вы сами понимаете чем это может быть чревато.
В папке проекта создадим две директории: public и src и переместим index.php в папку public. Помните, что мы не хотим ничего раскрывать, поэтому вставляем данный код в файл index.php:
<?php declare(strict_types = 1);
require __DIR__ . '/../src/Bootstrap.php';__DIR__ это волшебная константа которая содержит путь к текущей директории.
declare(strict_types = 1); устанавливает строгую типизацию. В данном руководстве мы будем использовать строгую типизацию во всех файлах.
Bootstrap.php - файл, который объединяет наше приложение. Cкоро доберемся и до него.
Также папка public будет содержать ресурсы приложения (CSS и JavaScript файлы).
Давайте перейдем в директорию src и создадим файл Bootstrap.php который будет содержать следующий код:
<?php declare(strict_types = 1);
echo 'Hello World!';Теперь посмотрим все ли настроено правильно. Открываем консоль и переходим в папку public. Вводим php -S localhost:8000 и нажимаем enter. Данная команда запустит встроенный веб-сервер. Сейчас мы сможем получить доступ к нашей странице по ссылке: http://localhost:8000. В окне браузера должно появится сообщение «Hello World».
Если в окне браузера вы видите ошибку, попробуйте повторить все заново. Если вы видите пустое окно, перейдите в консоль и проверьте нет ли там ошибок. Если ошибки есть, попробуйте исправить их, иначе, едем дальше