PHP OOP Access Modifiers

PHP OOP Access Modifiers (public, private, protected)
1. Types of Access Modifiers in PHP
| Modifier | Accessible Inside Class | Accessible Outside Class | Accessible in Child Class |
|---|---|---|---|
| public | Yes | Yes | Yes |
| private | Yes | No | No |
| protected | Yes | No | Yes |
public (open for all)
Anything public can be accessed from anywhere.
Example:
private (only inside same class)
Private properties/methods cannot be accessed from outside or by child classes.
Wrong (will cause error):
Access using a public method:
protected (inside class + child class)
Protected can be accessed from:
- same class
- inherited (child) classes
- NOT accessible from outside
Example:
Full Example: All 3 Modifiers Together
Why Access Modifiers Are Important?
- Improve security
- Prevent accidental changes
- Control how data is accessed
- Make code clean and professional
- Essential for real OOP projects
- Used heavily in Laravel
Summary Table (Easy to Remember)
| Modifier | Meaning |
|---|---|
| public | Anyone can access |
| private | Only inside the class |
| protected | Class + child subclass |
