Course Title: Backend Development Using PHP
Pre-request: Web Programming
General Objective
The objective of this course is to enable learners to comprehend, understand, and practice the
fundamental and advanced principles of PHP. This course equips students with practical skills to
develop secure, efficient, and scalable web applications. The learners will apply their knowledge
to build robust solutions, preparing them for careers as professional developers and system
architects.
Duration
This 3-month intensive PHP course is designed for learners to master both fundamental and
advanced PHP concepts through a structured weekend schedule. Starting on 23rd November
2024, the course spans 12 weekends with 8 hours of instruction each day.
Key topics include
PHP Basics: Syntax, control structures, functions, and arrays.
Advanced Form Handling: Data validation, file uploads, securing forms, sessions, and
cookies.
Database Integration: Using MySQL with PHP, prepared statements, and database
optimization.
Advanced Features: Error handling, APIs, and security best practices.
Frameworks & Deployment: Laravel, Git, and deploying PHP applications.
Learners will build real-world applications and gain industry-relevant skills, preparing them for
professional development roles.
Project
At the end of the course, students will develop a fully functional STEM Center Management
System as their final project. This system will handle registration, news and announcement
management, chatting, galleries for showcasing projects, and an online learning platform. The
system will replace paper-based registration and will be hosted at an actual STEM center,
making it a real-world application.
Lub
The PHP course will include lab sessions three days a week, giving students the opportunity to
practice based on their shift schedule.
1|Page Prepared by: Natnael Abebe
Outline and Class Program
Chapter Topics Hours Date Weekend
Chapter 1: Introduction to PH
What is PHP?, History and
evolution of PHP, Key features and
1.1 Overview 2 23/11/2024 W1
comparison with other languages
and Applications of PHP
Installing a local server (XAMPP,
1.2 Setting Up WAMP) , Configuring PHP settings
2 23/11/2024 W1
Environment , Introduction to IDEs and text
editors (VS Code, PHPStorm)
PHP tags and basic structure,
1.3 Basic Variables, data types, and constants
4 23/11/2024 W1
Syntax ,Basic operations and dynamic
typing
Chapter 2: PHP Fundamentals
Conditional statements (if, switch) ,
2.1 Control
Loops (for, foreach, while, do- 3 24/11/2024 W2
Structures
while)
Defining and calling functions,
Function parameters and return
2.2 Functions 5 24/11/2024 W2
types , Anonymous functions and
closures , Recursive functions
Indexed, associative, and
2.3 Arrays multidimensional arrays, Built-in 4 30/11/2024 W3
array functions
String operations and functions ,
2.4 Working
String interpolation and 3 30/11/2024 W3
with Strings
concatenation
Chapter 3: Working with Forms and Sessions
GET vs POST methods, Validating and
3.1 Form
sanitizing user inputs, HTML form 4 01/12/2024 W4
Handling Basics
structure and PHP integration
File uploads and MIME type validation
3.2 Advanced
Handling multiple file uploads, 4 01/12/2024 W4
Form Handling
Dynamic forms with PHP
Cross-Site Scripting (XSS) prevention ,
3.3 Securing
Cross-Site Request Forgery (CSRF) 4 07/12/2024 W5
Forms
prevention , Token-based validation
3.4 Sessions and Understanding sessions and cookies
5 07/12/2024 W5
Cookies Creating and managing sessions
2|Page Prepared by: Natnael Abebe
3.5 Building Creating multi-step forms Storing form
Form-Driven data in sessions Advanced data 5 08/12/2024 W6
Applications validation and processing
Chapter 4: Database Integration
Using mysqli and PDO for database
4.1 Connecting
interaction Prepared statements for 6 08/12/2024 W6
PHP to MySQL
security
Transactions and rollbacks Optimizing
4.2 Advanced
queries for performance Database 9 14/12/2024 W7
SQL Operations
indexing
Chapter 5: Advanced PHP Features
5.1 Error and
PHP error types Exception handling
Exception 3 15/12/2024 W8
with try-catch
Handling
5.2 File Reading, writing, and manipulating
3 15/12/2024 W8
Handling files
5.3 Working Consuming RESTful APIs, Building a
5 21/12/2024 W9
with APIs basic API with PHP
5.4 Security Best Password hashing and verification,
4 21/12/2024 W9
Practices Secure session management
Chapter 6: Building and Deploying Applications
Building a blog or e-commerce
6.1 Real-World
application, User authentication and 6 22/12/2024 W 10
Applications
role management
Setting up a production environment
6.2 Deployment 3 22/12/2024 W 10
Optimizing applications for deployment
6.3 Version
Control and Using Git and GitHub for collaboration 2 28/12/2024 W 11
Collaboration
Chapter 7: Frameworks and Future Trends
Introduction to Laravel, CodeIgniter,
7.1 PHP
and Symfony , Hands-on project using 6 28/12/2024 W 11
Frameworks
Laravel
7.2 Modern PHP Asynchronous PHP programming PHP
6 29/12/2024 W 12
Practices 8 new features and optimizations
7.3 Exploring Composer for dependency management
4 29/12/2024 W 12
Other Tools PHPUnit for testing PHP applications
3|Page Prepared by: Natnael Abebe