Почему для начала изучения PHP нет необходимости ставить веб-сервер и базу данных ?
Заметил, что когда люди начинают изучать язык PHP, они начинают возиться с LAMP (Linux, Apache, Mysql, PHP) , WAMP(W - Windows) и пр. стеком технологий. При этом забывается, что люди хотят изучать новые технологии постепенно. Лично я сторонник того, чтобы в связке LAMP изучать по отдельности каждый компонент в обратном порядке. А именно, вначале изучаем только PHP (со встроенным веб-сервером, о чем описано ниже), потом MySQL|MariaDB , потом Apache, ну и на последок Linux. Естественно, вместо PHP можно выбрать Python, вместо MariaDB - PostgreSQL, вместо Linux - Windows.
Давайте попробуем разобраться, как можно облегчить трудности впервые знакомящихся с PHP людей и не отпугнуть их излишними трудностями.
Нужно ли ставить отдельно веб-сервер при изучении PHP ?
Нет необходимости. Начиная с PHP 5.4 в составе идет веб-сервер для помощи в разработке. Конечно, он не является какой-либо серьезной заменой Apache, NGINX и пр., т.к. однопоточный. Тем не менее для знакомства с языком программирования его вполне достаточно.
// Запустить встроенный веб-сервер можно следующим следующим образом:
*nix: php -S localhost:8000 router.php
Win: php.exe -S localhost:8000 router.php
Преимуществом такого подхода является то, что вам нет необходимости лезть в настройки полноценного веб-сервера, для того, чтобы запустить веб-сервер на другом порту. Другими словами, вам достаточно просто будет запустить два сервера:
// Пример запуска двух серверов:
php -S localhost:8000 router.php #веб-сервер для разработки
php -S 127.0.0.1:8090 router.php #веб-сервер для демонстрации
Sqlite3 вместо Mysql ?
А почему бы и нет? Это прекрасная база данных для изучения разработки и проектирования баз. Даже простой аналог phpMyAdmin есть - phpLiteAdmin . Sqlite поставляется в виде единственной, компактной библиотеки libsqlite.
А в случае с PHP особенность состоит в том, что библиотека уже идет вместе с PHP начиная c версии 5.3 (ранее был sqlite2) !
Т.е. для того, чтобы нам сделать учебное простое приложение, нам нет необходимости разворачивать набор из веб-сервера, базы данных, PHP, а потом еще и настраивать это все. Достаточно просто скачать PHP с php.net , распаковать и запускать с описанными выше параметрами. И эта возможность есть еще со времен PHP 5.4 который вышел в 2012 году !
А есть ли простой пример ?
Да конечно. Накидал пример для изучения в виде простейшего телефонного справочника. Никаких премудростей, всего пару строк php и небольшой шаблон в одном файле. Самое то, чтобы просто запустить и проверить, что для учебных примеров хватит и простого PHP.