It's Time to Launch Your Career Into Orbit 🚀

PHP Professional Toolkit contents

"I won't lie I've watched a lot of php oop courses and this is the best!!" Yasser

Are you ready to take your dev skills to A WHOLE NEW LEVEL?




Question: What is the difference between you and those PHP developers that earn 20, 30, or 40k more than you do?

Answer: Those developers already possess the skills inside of these 3 courses...

Why Should You Invest In These Courses?


💰 These skills are guaranteed to advance your career

🎼 These skills are essential if you want to write code with Laravel and Symfony

🆕 The information is current and relevant to the market

🧠 You will achieve an advanced level of understanding of how modern PHP works

🌴 Flexible. You can work at your own pace. Take as long as it takes

🔍 No other courses teach these subjects with the same level of attention to detail

📈 Promotion. To become a senior PHP developer, IT'S ESSENTIAL to know this stuff

💼 Career mobility. OOP can be applied to a wide range of programming languages

Click here to BUY THIS BUNDLE NOW

$129 + VAT added on checkout page

Within this bundle you will receive three modern PHP courses
Learn Object Oriented PHP is a complete guide to complete Object Oriented Programming. To learn more click here
PHP Framework PRO is a complete guide to modern PHP frameworks. To learn more click here
You will also recieve Testing PHP which is a complete guide to testing PHP applications, further information click here


✅ 5★ rated courses
✅ Over 300 video tutorials 
✅ Nearly 50 hours of quality content - no filler!
✅ All code examples included
✅ Lifetime ownership...no deadlines!
✅ Regular student challenges
📜 Certificate of achievement
🤝 Lifetime money back guarantee



🔢 Click here to spread the price over 4 payments of $33




HERE'S WHAT A GOOD DEVELOPER NEEDS TO KNOW...



Creating classes - Class properties - Class methods - Method arguments - Named arguments - Constructors - Constructor promoted properties - Type hinting - Class type declarations - Return type declarations - Inheritance - Redundancy and duplication - The 'extends' keyword - Inheritance and constructors - Overriding parent methods - Visibility - Protected properties - Private properties - Method visibility - Encapsulation - Typed properties - Union types - Static properties - Static methods - Class constants - Abstract classes - Abstract methods - Interfaces - Traits - Combining traits and interfaces - Traits and precedence - Abstract methods in traits - Static methods in traits - Late static binding - The 'final' keyword - Exceptions - Try / catch blocks - Exception subclasses - Custom Exceptions - finally blocks - Error class - get magic method - set magic method - unset magic method - toString magic method - destruct magic method - call magic method - clone magic method - invoke magic method - Namespaces - Organizing using namespaces - Autoloading - Autoloading namespaced classes - Autoloading with composer - Inspecting classes - Inspecting class attributes - Reflection API: ReflectionClass - Reflection API: ReflectionMethod - Single Responsibility Principle - Composition - Dependency Injection - Polymorphism - Callables Part One - Callables Part Two - Anonymous Classes -Creating a MySQL Database - The Singleton Pattern - PHP Data Objects (PDO) - PDO Queries - Object Relational Mapping - Creating ORM Entity Classes - Generating Schema SQL - ORM Relationships - Serialization - Serializing Objects - Unserializing Objects - sleep Magic Method - wakeup Magic Method - serialize Magic Method - unserialize Magic Method - DateTime Class - Comparing Dates - Modifying Dates - Array Access - Iterator Interface - Countable Interface - IteratorAggregate - ArrayObject - Collection Classes - Composite pattern - Decorator - Adapter - Strategy - Observer - Null Object - Dependency Injection - Service Locator - Factory Method


Testing functions - Testing class methods - Filtering tests - Errors vs failures - The setUp method - The tearDown method - Using tests to refactor - Common assertions - Custom failure messages - Configuring PHPUnit - Testing errors and exceptions - Data providers - Testing strategies - Risky tests and incomplete tests - Mocking - Refactoring for easier testing - Mocking static methods - Testing all logic paths - Should you replace static methods? - Integration testing - When not to mock - Testing API integration - Grouping tests - Authentication exception testing - Testing against a database - Create a test database connection - Database refresh tool - Database dependant test cases - Testing ordered database records - Testing null database returns - Test saving to the database - Database test assertions - Feature test assertions - Running feature tests - PHPUnit Test Doubles - Testing expectations - Faking method return values - Testing consecutive returns - Throwing exceptions from stubbed methods - Will return callback - Test faked methods receive correct arguments - Test faked methods receive correct arguments using callbacks - The mock builder - Test coverage introduction - Test coverage setup - HTML Format coverage report - Maximising test coverage - Test Driven Development (TDD) - Using tests to switch libraries - Testing HTTP Request / Response - Asserting against response content - Testing authenticated endpoints


The Front Controller - Request Class - Response Class - Http Kernel - Routing - Adding Routes - Retrieving Path Info - Defining Routes - Controller Classes - Controller Method Arguments - Router Classes - Flexible Route Handling - Exception Handling - When to Fork a Repository - Create a Framework Repository - Create a Container - Container Exceptions - Container Has Checks - Autowiring - Using a Container - Container Aliases - Container Parameters - Resolving a Controller - Controller Autowiring - Environment Modes - Using Environment Variables - Templating - Twig Templating Engine - Abstract Controller - Rendering Templates - Creating View Templates - Reusable Templates - Input Forms - Preventing Cross-Site Scripting (XSS) Attacks - Database Abstraction Layer - Migration Files - Console Application Entrypoint - Command Classes - Registering Commands - Running a Console Application - Executing Console Commands - Command Options - Database Migration Steps - Creating Migrations Tables - Database Transactions - Obtaining Applied Migrations - Getting Migration Files To Apply - Migrating Up - Inserting Migrations - Executing Migrations Queries - Submitting a Form - Accessing the Request - Creating a Post Entity - Data Mapper - Repositories - Find or Fail Methods - Redirect Responses - Sessions and Flash Messages - Template Renderer Factory - Rendering Flash Messages - PSR-15 Middleware - Injecting Middleware - Resolving Middleware - Middleware Completion - Session Start Middleware - Request Clean Up - Auth User Entities - User Tables - Register Forms and Routing - Registration Handling - Registration Form - Validating Form Input - Redirecting with Errors - Completing Registration - Login Form and Routing - The Login Steps - Authentication / Security Component - Verifying User Credentials - Auth User Repository - Logging In a User - Redirecting an Authenticated User - Route Middleware - Injecting Middleware - Refactoring a Router - Authenticate Middleware - Guest Middleware - Completing Registration - Logout Links - Handling The Logout - Introduction - Event Dispatcher - Event Objects - Dispatching an Event - Event Listeners - Adding Event Listeners - Stopping Event Propagation - Amending Paths - Service Providers - Registering Service Providers




It should take years to piece together quality, up to date, learning resources that cover all this stuff...



...BUT it's all covered here IN GREAT DEPTH


Click here to BUY THIS BUNDLE NOW

$129 + VAT added on checkout page

Within this bundle you will receive three modern PHP courses
Learn Object Oriented PHP is a complete guide to complete Object Oriented Programming. To learn more click here
PHP Framework PRO is a complete guide to modern PHP frameworks. To learn more click here
You will also recieve Testing PHP which is a complete guide to testing PHP applications, further information click here


✅ 5★ rated courses
✅ Over 300 video tutorials 
✅ Nearly 50 hours of quality content - no filler!
✅ All code examples included
✅ Lifetime ownership...no deadlines!
✅ Regular student challenges
📜 Certificate of achievement
🤝 Lifetime money back guarantee


🔢 Click here to spread the price over 4 payments of $33



Check Out These Sample Videos From The Courses

OOPHP Example Video - Creating Classes

In this recording, I start at the very beginning by introducing classes and explaining their relation to objects.

PHP Framework PRO Example Video - Request Class

All PHP frameworks use objects to represent the incoming request. One of the greatest advantages of this is encapsulation: we can store all of the superglobal values as properties on our request object and those values will be preserved and protected.

Testing PHP Example Video - Testing Class Methods

The courses starts by installing the PHPUnit testing framework and then writing our first tests. In this sample we look at testing class methods.

OOPHP Example Video - Polymorphism

Chapter 7 covers some more of the principles of object oriented programming such as polymorphism.

PHP Framework PRO Example Video - PSR-15 Middleware

PSR-15 is a PHP Standard Recommendation that provides a set of interfaces for HTTP middleware components. These interfaces make it easier to create reusable middleware that can be used across different PHP frameworks and applications.

Testing PHP Example Video - Red > Green > Clean

This course includes an in-depth on Test Driven Development which adapts an example by Kent Beck. TDD is an interative process where you: 1. Quickly create a failing test. 2. Make that test pass by whatever means. 3. Refactor for clean code. I call these steps Red, Green, Clean

Time For A Reality Check


You'll see a lot of learning resources out there that will try to teach you this stuff using simplified examples like $dog->bark() or $car->drive()


This is OK for showing you the concepts but they are not realistic and you will never see code like this in the real world. There are lots of real-world scenario's that are easy to understand such as $cart->add($item)


I still work in the industry as a senior developer and I'll only use real examples which I have seen throughout my career. That's how you'll learn and that's how you'll succeed.

Click here to BUY THIS BUNDLE NOW

$129 + VAT added on checkout page

Within this bundle you will receive three modern PHP courses
Learn Object Oriented PHP is a complete guide to complete Object Oriented Programming. To learn more click here
PHP Framework PRO is a complete guide to modern PHP frameworks. To learn more click here
You will also recieve Testing PHP which is a complete guide to testing PHP applications, further information click here


✅ 5★ rated courses
✅ Over 300 video tutorials 
✅ Nearly 50 hours of quality content - no filler!
✅ All code examples included
✅ Lifetime ownership...no deadlines!
✅ Regular student challenges
📜 Certificate of achievement
🤝 Lifetime money back guarantee


🔢 Click here to spread the price over 4 payments of $33



This is what people have had to say about my courses



Very progressive teaching, each block building on the previous one, right amount of new information in each block, everything is detailed and repetitious of new concepts and steps help understanding and memorising them. Even the speed of speech delivery is right. - Éric Cheilletz

This is perfect! - Unjoined

You have a great way of explaining OOP - Locoplata

Unit testing has been a low point in my professional PHP career the last few years. Have not found decent training anywhere. So glad to have found this course. - Karl Zipser

This is one of the best courses I have ever done. You have a gift for teaching. Your training has given me very valuable context for all things I knew, corrected some stuff I did incorrectly, and has taught me innumerable new things. - Mark Thijssen

Everything is perfect with this course. I am watching it for my team and am pretty sure they will love it - Mathieu

Making me enjoy coding again. - Drew Hinde

The testing PHP course is long, but very good and amazingly informative. Testing is something that has always eluded me, so the course has definitely given me a grounding and something I can/will refer back to. Thanks for the course Gary and your other OOP course, they have been excellent. - Jonathon Wood

Gary has deep knowledge and he is following the best practices. I have no suspicions about learning non-useful nor obsolete techniques. It is essential to have work / code discipline and he has it and kind of routing you to have the same. - Burak

Clear and detailed. - Piero Recchia

Gary has a patient delivery style, and I can understand him. I also appreciate that code for the video is provided, with each video, because I like to spend time testing and changing that code to get further into it. - Karl Zipser

Well explained step by step approach - Takunda Chibanda

The way of teaching is so good with real time examples. There is also engaging activities - Lokith S

Information delivered clearly and in a well-structured way - Sim

Gary has a clear delivery style that promotes retention of the module objectives that he is expressing - Karl Zipser

This course is fantastic! I'm really looking forward to watching the rest of the course. Thanks a million Gary! - Michael Gibbs

Well structured and taught - Suleyman Solak

Great tutorial! - Fh Ndiritu

It's much more pleasant to follow than most other courses I have tried. - Mick Amato

Thanks for this video, been watching it for the 2nd time and I can't even feel the time goes by - Lexer Quine

I won't lie, I've watched a lot of php oop course and this is the best!! Thank you king - Yasser Latrach

PHP is making sense and I can apply what I am learning at my job - Dee

Very engaging and easy to understand the concepts - Luciano

I'm very happy with the course and the instructor. - Paulo

Gary explains OOP with PHP very clearly and is easy to understand. I think it's simply great - thanks for creating it!! - Nicolas Alexander Rau

This course is a true gem! It's the first time I watched a 3h course and felt I really understood the concepts. Thank you so much Gary! Looking forward to the full course:) - Giulia Pizzignacco

I saw all the videos of oriented object programming and they were awesome! Great content - Arius

Great stuff for OOP in PHP for beginners and great reminders for other Devs. - TomTom Shaylash

Excellent course delivered by a knowledgeable and engaging content creator. Highly recommended - Drew Hinde

I have learnt so much new information which helps me to write efficient php (oop) code. I am very thankful to Gary for providing such quality content - Ridwanullah Raufi

I'm very pleased with the way Gary explains everything. - Rob Spruyt

I'm enjoying the clear English of Gary, well spoken and succinct explanation of his code. - James

Exactly what I needed for my level of coding, I can create crud applications in PHP, but OOP is completely new to me. - Tom

Sufficiently long sections to be able to take in the information, it makes it easier to understand. Very good explanations. - Mats Akebrand

I have had an extremely positive experience with this course, so Mr Clarke had definitely earned a perfect 5 stars from me! This course has helped me to understand how OOP works SO MUCH better than I previously did. I 100% understand all of his examples. - Jeffrey Carter

Excellent course, interesting and engaging - Clive

Best tutorial on this topic. Ilian Karasimirov

I like all your videos, great work. Keep rocking! Thank you for everything. Gokul jadhav.g

I want to hit the like button for every test passed. Thanks for the best tutorial available on this subject. Samuel Ferreira

You explain the Mock in unittest with very easy understanding, you have reproduced different use cases that are very important to understand!! Thank you so much! 優散的傻勢

I have ADHD and have trouble with getting comfortable with tutorial styles and formats. Your video here is just bliss to me. Thank you thank you! Please don't stop making videos! Sofascialistadankula Megadonakeratosis

I just appreciate all of Gary's work!!!!!! - Karyna

Good explanations, concrete and diverse cases - Mikaidou
Gary Clarke

Who am I?


Hello and thank you so much for checking out my work. My name is Gary Clarke and I'm a software developer with many years experience, primarily in PHP. I started creating video tutorials during lockdown in 2020 because I wanted the challenge of being able to explain complex / technical subjects to others in a way which is easy to understand and remember.

At this moment in time, my videos have been watched nearly half a million times and I intend to keep creating new and improved content and teaching more and more new people. It would be my pleasure to see you on the inside of one of my courses.