Intermediate PHP Programming – Practical Course in Uganda

Duration
4 weeks
Investment
UGX 450,000
Teaching
Live online
Program Introduction
Advance from basic PHP scripts to structured, maintainable software with this intermediate PHP programming course for learners in Uganda and East Africa. The programme concentrates on modern PHP language features, object-oriented programming, reusable architecture, Composer, testing, and professional code organisation. Learners build domain logic around relatable African organisational needs without introducing websites, databases, or frameworks. By the end, they can structure PHP applications that are easier to test, maintain, extend, and share with a development team.
Key Features & Benefits
• Approximately 8–10 study hours per week. • Strong object-oriented programming foundation. • Modern types, enums, readonly data, and exceptions. • Composer and PSR-4 project organisation. • Automated testing and static analysis. • Memory-efficient data processing. • Regionally relevant command-line capstone. • No HTML, CSS, JavaScript, database, Laravel, or web development.
Real-World Applications
• Learners can apply these skills to: • Maintain structured PHP codebases. • Build reusable calculation and validation libraries. • Develop internal command-line tools for businesses and NGOs. • Transform large CSV and JSON datasets. • Implement cooperative, logistics, education, or financial domain rules. • Write testable PHP code in a development team. • Modernise procedural PHP programs into maintainable object-oriented systems. • Prepare for PHP developer roles and advanced programming study across Africa.
Course outline and learning expectations
This is a tutor-led course. The outline shows what your tutor will cover; teaching materials and examinations are provided directly to enrolled students.
Live online
English (Uganda)
Intermediate
Lower Secondary · Upper Secondary · University
What you will learn
- By the end of the course, the learner will be able to:
- Use strict typing, nullable types, union types, intersection types, and enums appropriately.
- Design classes using encapsulation, constructors, and typed properties.
- Apply interfaces, abstract classes, traits, inheritance, and composition.
- Organise PHP projects with namespaces and Composer PSR-4 autoloading.
- Use closures, callables, first-class callables, and functional array operations.
- Model business rules with value objects and immutable data.
- Process large datasets efficiently with iterables and generators.
- Create clear exception hierarchies and resilient error-handling flows.
- Write automated tests and analyse code quality.
- Deliver a structured, tested, reusable PHP command-line application.
Modules
- 1
Modern PHP types and safer functions
declare(strict_types=1).Typed parameters, properties, returns, and constants.Nullable, union, intersection, mixed, never, and void.Value versus reference behaviour.Named arguments and variadic arguments.Enums and domain-safe values.Designing predictable function contracts. - 2
Object-oriented PHP foundations
Classes, objects, constructors, and promoted properties.Visibility and encapsulation.Instance and static members.Typed and readonly properties.Object identity and equality.Value objects and immutable objects.Modelling contributions, money, dates, and identifiers. - 3
Abstraction and composition
Interfaces and abstract classes.Inheritance and method overriding.Composition versus inheritance.Traits and conflict resolution.Dependency injection without a framework.Polymorphism.Practical SOLID principles.Refactoring procedural programs into objects. - 4
Namespaces, Composer, and project structure
Declaring and importing namespaces.Namespace aliases.Organising source and test directories.Composer project configuration.PSR-4 autoloading.Dependencies and development dependencies.Semantic version constraints and lock files.Building a Composer-ready PHP project. - 5
Closures and expressive data processing
Anonymous and arrow functions.Capturing variables with use.Callables and first-class callable syntax.Higher-order functions.array_map, array_filter, array_reduce, and callbacks.Sorting with custom comparison functions.Pipelines for cleaning and transforming data.Choosing loops versus functional operations. - 6
Iterables, generators, and robust exceptions
The iterable type.Iterators and generator functions.Lazy processing with yield.Processing large CSV files without loading everything into memory.Domain, validation, and infrastructure exceptions.Exception chaining.Reliable cleanup with finally.Logging-friendly error information. - 7
Automated testing and code quality
Unit tests and test organisation.Assertions, fixtures, and data providers.Testing normal cases, boundaries, and failures.Test doubles for isolated code.Static analysis with PHPStan.Coding standards and automatic formatting.Code review checklists.Refactoring while preserving behaviour. - 8
Intermediate capstone
Build a Cooperative Contribution and Reconciliation Engine that:Uses classes, interfaces, enums, and value objects.Imports member contributions from CSV or JSON.Applies configurable fictional contribution rules.Detects duplicates and invalid records.Produces member and group summaries.Uses Composer PSR-4 autoloading.Includes automated tests and static analysis.Runs entirely through the command line.
Before you enroll
- Learners should have completed the Ellipkom beginner PHP course or demonstrate the ability to:
- Write PHP command-line programs.
- Use variables, arrays, loops, conditions, and functions.
- Work with CSV and JSON files.
- Apply parameter and return type declarations.
- Handle basic exceptions.
- Debug syntax and runtime errors.
- Use basic Git commands.
- No web development or database experience is required.
What you need
- PHP 8.5 CLI or PHP 8.4.
- Visual Studio Code or comparable editor.
- Composer 2.
- Git.
- PHPUnit compatible with the installed PHP version.
- PHPStan for static analysis.
- Terminal or PowerShell.
- Offline PHP and Composer documentation where needed.
Frequently asked questions
More in Computer Programming

Introduction to Object-Oriented Programming Concepts

Advanced Rust Systems Programming Course in Uganda & Africa

Intermediate Dart Programming in Uganda & East Africa

Intermediate Rust Programming Course in East Africa: Traits, Lifetimes & Concurrency

Advanced PHP Programming – Professional Course in Uganda

Data Structures and Algorithms with Python for Beginners in Uganda
More for Lower Secondary · Upper Secondary · University

Dart Programming for Beginners in Uganda & East Africa

Advanced Dart Programming & Concurrency for Africa

Advanced iOS Engineering: Secure, Offline-First Apps for Africa

Advanced NumPy for High-Performance Data Science in Africa

Advanced Pandas Course for Scalable Data Pipelines in Africa

Advanced Python Programming Course in Africa
Quick Actions
Need Help?
Have questions about this program? Our team is here to help!