Duration of the online course: 6 hours and 7 minutes
4.5
(24)
Build real web apps with this free PHP course: master forms, validation, MySQL, and security basics—ideal for beginners and job-ready skills.
In this free course, learn about
Why PHP remains useful for web development and common reasons to learn it
Setting up a local PHP environment (e.g., XAMPP/WAMP/MAMP) and using htdocs projects
Embedding PHP in files; variable naming rules; basic output and types (strings, booleans)
String concatenation and operator precedence (BIDMAS) for arithmetic expressions
Arrays in PHP: indexed, associative, multidimensional; how to structure nested data
Control flow: for loops, conditionals, and using break/continue in loops
Functions and variable scope, including how global variables work
include vs require and basic project structure for reusable templates/partials
HTML forms with PHP: GET vs POST, reading inputs, and using query strings in URLs
Security basics: preventing XSS via escaping/sanitizing user output
Form validation patterns: validating email, storing and displaying errors with an errors array
RDBMS & MySQL fundamentals; connecting from PHP and running SQL queries
Sorting results with SQL ORDER BY and selecting/ordering by a specific column
PHP extras: alternative syntax for control blocks, superglobals, null coalescing, file I/O
About the free online course
Turn an idea into a working website by learning how server-side code really operates. This free online course guides you through PHP for web development, helping you move from simple scripts to dynamic pages that respond to users, process data, and power real features you see in modern sites. If you want a practical path into backend development, PHP remains a widely used tool across content platforms, small businesses, and large applications—making it a valuable skill for both freelance and employed roles.
You will begin by setting up a local development environment and understanding how PHP runs on your machine, so you can build and test projects quickly. As you progress, you will learn to write clean code using variables, operators, string handling, arrays, loops, conditionals, and functions—core fundamentals that translate to any programming language. You will also practice writing reusable logic, organizing code sensibly, and understanding scope, including how global values behave.
From there, the course shifts into building interactive web experiences: handling form submissions, choosing between GET and POST, validating inputs, and displaying user-friendly error messages. You will learn habits that protect applications, including techniques to reduce the risk of cross-site scripting. You will also work with data persistence by connecting PHP to MySQL, running queries, and sorting results for clearer output. Along the way, you will see patterns used in everyday development, such as passing identifiers through query strings to show detail pages, working with superglobals, and using helpful language features like the null coalescing operator.
By the end, you will be more confident building structured PHP pages that read and write data, validate user input, and behave predictably in real scenarios. Whether your goal is to create a portfolio project, support a WordPress or CMS workflow, or take your first step into backend engineering, this course gives you a practical foundation you can apply immediately.
Course content
Video class: PHP Tutorial (07m
Exercise: _What are some reasons why learning PHP is still worthwhile for developers?
Exercise: _Why is PHP still a worthwhile language to learn for web developers?
Video class: PHP Tutorial (09m
Exercise: What software is suggested for setting up a local PHP development environment?
Video class: PHP Tutorial (07m
Exercise: _What is the purpose of creating a folder inside 'htdocs' in PHP development?
Exercise: _What is the correct way to embed PHP code inside PHP tags in Sublime editor?
Video class: PHP Tutorial (07m
Exercise: What is a valid rule for naming variables in PHP?
Video class: PHP Tutorial (11m
Exercise: _What is string concatenation in PHP?
Exercise: _What is string concatenation in PHP?
Video class: PHP Tutorial (09m
Exercise: What is the outcome of the expression 2 * (4 + 9) / 3 according to BIDMAS?
Video class: PHP Tutorial (16m
Exercise: _What are the three types of arrays in PHP?
Exercise: _What are the three types of arrays in PHP?
Video class: PHP Tutorial (10m
Exercise: What is a multi-dimensional array?
Video class: PHP Tutorial (19m
Exercise: _What is a for loop in PHP?
Exercise: _What is the purpose of loops in PHP?
Video class: PHP Tutorial (12m
Exercise: In PHP, how does a boolean value display when echoed to a browser?
Video class: PHP Tutorial (12m
Exercise: _What is a conditional statement in programming?
Exercise: _What is a conditional statement in programming?
Video class: PHP Tutorial (03m
Exercise: What do the 'break' and 'continue' keywords do in PHP loops?
Video class: PHP Tutorial (12m
Exercise: _What are functions in PHP?
Exercise: _What are functions in PHP?
Video class: PHP Tutorial (08m
Exercise: What is the main characteristic of a global variable?
Video class: PHP Tutorial (05m
Exercise: _What is the difference between include and require in PHP?
Exercise: _What is the difference between include and require in PHP?
Video class: PHP Tutorial (11m
Exercise: What CSS library is used in the Ninja Pizza project?
Video class: PHP Tutorial (16m
Exercise: _What are the two methods of sending data to the server via a web form in PHP?
Exercise: _What are the two methods of sending data to the server via a web form in PHP?
Video class: PHP Tutorial (04m
Exercise: How can you protect a website from cross-site scripting attacks?
Video class: PHP Tutorial (05m
Exercise: _What is form validation in PHP?
Exercise: _What is the purpose of form validation in PHP?
Video class: PHP Tutorial (13m
Exercise: What is used to validate an email in PHP according to the script?
Video class: PHP Tutorial (10m
Exercise: _What does the author do to store the error messages and output them in the form?
Exercise: _What is the purpose of creating an errors array in the PHP code?
Video class: PHP Tutorial (05m
Video class: PHP Tutorial (05m
Exercise: _What is a relational database management system?
Exercise: _What is MySQL and how do we communicate with it from PHP files?
Video class: PHP Tutorial (07m
Video class: PHP Tutorial (05m
Exercise: _What is the method used to connect to the database in PHP?
Video class: PHP Tutorial (07m
Video class: PHP Tutorial (08m
Exercise: _What keyword is used to order the data in a specific way in PHP and how can we order it by a specific column or property?
Exercise: _What keyword is used to order the data in a specific way in MySQL and what is the name of the property that the author orders the data by in the given text?
Video class: PHP Tutorial (06m
Video class: PHP Tutorial (04m
Exercise: _What is the alternative syntax that can be used to make it easier to keep track of curly braces when using nested loops and conditional statements in PHP?
Exercise: _What is the alternative syntax that can be used instead of curly braces for loops and conditional statements in PHP?
Video class: PHP Tutorial (10m
Video class: PHP Tutorial (13m
Exercise: _What is the purpose of using a query string in the URL when linking to the details page for a pizza in the tutorial?
Exercise: _What is the purpose of the query string in the URL when clicking on the "more info" button for a pizza?
Video class: PHP Tutorial (09m
Video class: PHP Tutorial (03m
Exercise: _What does the author want to do in the lesson?
Video class: PHP Tutorial (05m
Video class: PHP Tutorial (05m
Exercise: _What are superglobals in PHP?
Exercise: _What are superglobals in PHP?
Video class: PHP Tutorial (09m
Video class: PHP Tutorial (03m
Exercise: _What is the purpose of using the null coalesce operator in PHP?
Exercise: _What is the purpose of using the null coalesce operator in PHP?
Video class: PHP Tutorial (05m
Video class: PHP Tutorial (06m
Exercise: _What is the function used to check if a file exists in PHP?
Exercise: _What function can we use to read the contents of a file in PHP?
Course comments: Programming
Jose Amandio de Almeida
Excellent