I put together this project while introducing a friend of mine to PHP. I decided to clean it up a bit and put it on GitHub so anyone new to PHP can have a taste of a very simple and minimal website built with PHP.
This project is meant for beginners. I've intentionally kept it minimal while introducing some separation of concerns.
The site requires PHP 8+. There are only two steps to run it:
- Download the project (or
git clone https://github.com/banago/simple-php-website.git) to the desired directory on your computer - Run
php -S localhost:8080on your terminal and navigate to http://localhost:8080 to see the site.
By default, the page URLs use query strings (?page=about). You need to have Apache installed for pretty URLs (/about) to work. To activate pretty urls, update the config value of pretty_uri to true.
The project covers these programming concepts:
- Variables
- Arrays
- Functions
- Pretty links (/about) with fallback to query string (?page=about)
- Basic example of separation of concerns *(functionality, template, content)
If you have any questions or recommendations for the project, please create an issue or hit me up on X @banago.
To take your PHP further, two free resources I'd recommend:
- Read PHP Explained — a modern, in-depth written guide.
- Watch Learn PHP The Right Way — a full beginner-to-advanced video course.
MIT