PHP Programming

  1. Object-Oriented Programming in PHP
    1. Core OOP Concepts
      1. Classes and Objects
        1. Class Definition
          1. Object Instantiation
            1. Object Identity
            2. Properties
              1. Property Declaration
                1. Property Initialization
                  1. Property Access
                  2. Methods
                    1. Method Definition
                      1. Method Invocation
                        1. Method Overloading
                        2. Encapsulation Principles
                        3. The $this Keyword
                          1. Accessing Properties
                            1. Calling Methods
                              1. Method Chaining
                              2. Constructors and Destructors
                                1. __construct() Method
                                  1. Constructor Parameters
                                    1. Constructor Overloading
                                      1. Constructor Promotion
                                      2. __destruct() Method
                                        1. Cleanup Operations
                                          1. Resource Management
                                        2. Access Modifiers
                                          1. public Visibility
                                            1. protected Visibility
                                              1. private Visibility
                                                1. Visibility Rules
                                                  1. Property and Method Visibility
                                                  2. Inheritance
                                                    1. extends Keyword
                                                      1. Parent-Child Relationships
                                                        1. Method Overriding
                                                          1. parent Keyword
                                                            1. final Keyword
                                                              1. Final Classes
                                                                1. Final Methods
                                                                2. Inheritance Hierarchies
                                                                3. Abstraction
                                                                  1. Abstract Classes
                                                                    1. Abstract Class Declaration
                                                                      1. Abstract Method Definition
                                                                      2. Abstract Methods
                                                                        1. Implementation Requirements
                                                                          1. Abstract vs Concrete Methods
                                                                        2. Interfaces
                                                                          1. Interface Definition
                                                                            1. implements Keyword
                                                                              1. Interface Contracts
                                                                                1. Multiple Interface Implementation
                                                                                  1. Interface Inheritance
                                                                                  2. Polymorphism
                                                                                    1. Method Polymorphism
                                                                                      1. Interface Polymorphism
                                                                                        1. Type Polymorphism
                                                                                        2. Static Properties and Methods
                                                                                          1. Static Declaration
                                                                                            1. Static Access
                                                                                              1. self Keyword
                                                                                                1. static Keyword
                                                                                                  1. Late Static Binding
                                                                                                  2. Traits
                                                                                                    1. Trait Definition
                                                                                                      1. Trait Usage
                                                                                                        1. Trait Methods
                                                                                                          1. Conflict Resolution
                                                                                                            1. insteadof Operator
                                                                                                              1. as Operator
                                                                                                              2. Trait Composition
                                                                                                              3. Namespaces
                                                                                                                1. Namespace Declaration
                                                                                                                  1. Namespace Organization
                                                                                                                    1. use Keyword
                                                                                                                      1. Class Importing
                                                                                                                        1. Function Importing
                                                                                                                          1. Constant Importing
                                                                                                                          2. Namespace Aliases
                                                                                                                            1. Global Namespace
                                                                                                                              1. Name Resolution
                                                                                                                              2. Autoloading Classes
                                                                                                                                1. spl_autoload_register()
                                                                                                                                  1. PSR-4 Autoloading
                                                                                                                                    1. Composer Autoloader
                                                                                                                                      1. Custom Autoloaders
                                                                                                                                      2. Magic Methods
                                                                                                                                        1. __get()
                                                                                                                                          1. __set()
                                                                                                                                            1. __isset()
                                                                                                                                              1. __unset()
                                                                                                                                                1. __call()
                                                                                                                                                  1. __callStatic()
                                                                                                                                                    1. __toString()
                                                                                                                                                      1. __invoke()
                                                                                                                                                        1. __clone()
                                                                                                                                                          1. __sleep()
                                                                                                                                                            1. __wakeup()
                                                                                                                                                              1. __serialize()
                                                                                                                                                                1. __unserialize()
                                                                                                                                                                  1. __debugInfo()