PHP Training
📘 Core PHP Syllabus
- Introduction to PHP
- What is PHP? History and versions
- Installing PHP, Apache, MySQL (XAMPP/WAMP/LAMP)
- Basic syntax and PHP tags
- Embedding PHP in HTML
- Variables, Data Types & Operators
- Variables and constants
- Data types (Integer, Float, String, Boolean, Array, Object, NULL)
- Type casting
- Arithmetic, Assignment, Comparison, Logical, Increment/Decrement, String operators
- Control Structures
- Conditional statements (if, if-else, if-elseif-else, switch)
- Loops (while, do-while, for, foreach)
- Break, continue, exit/die
- Functions
- Defining and calling functions
- Function arguments (default, dynamic, return values)
- Variable scope (global, local, static)
- Built-in functions (string, array, date/time, math)
- Anonymous functions and closures
- Arrays
- Indexed, Associative, Multidimensional arrays
- Array functions (array_push, array_pop, array_merge, etc.)
- Array iteration (foreach, array_map, array_filter)
- Forms and User Input
- Form submission (GET and POST)
- $_GET, $_POST, $_REQUEST, $_SERVER
- Input validation and sanitization
- Handling file uploads
- Working with Strings and Regular Expressions
- String manipulation functions (strlen, strpos, substr, etc.)
- Regular expressions (preg_match, preg_replace)
- Working with Files
- Reading and writing files
- fopen, fread, fwrite, fclose
- File handling functions (file_exists, filesize, etc.)
- PHP & MySQL Integration
- Connecting to MySQL using MySQLi and PDO
- Executing queries (SELECT, INSERT, UPDATE, DELETE)
- Fetching results (mysqli_fetch_array, mysqli_fetch_assoc)
- Prepared statements and SQL injection prevention
- Sessions and Cookies
- Using cookies (setcookie, $_COOKIE)
- Using sessions (session_start, $_SESSION)
- Login/logout systems
- Error Handling
- Types of errors (Syntax, Runtime, Logical)
- Error reporting
- try-catch blocks and exception handling
- OOP in PHP (Object-Oriented Programming)
- Classes and objects
- Properties and methods
- Constructor and destructor
- Inheritance, Interface, Traits
- Visibility (public, private, protected)
- Static methods/properties
- Namespaces and autoloading (spl_autoload_register)
- PHP and Web Security
- Input sanitization and validation
- SQL Injection protection
- XSS & CSRF protection
- Password hashing (password_hash, password_verify)
________________________________________________________________________________________________________________________________________________________________________________
⚙️ Laravel Framework Syllabus
- Introduction to Laravel
- MVC architecture
- Installing Laravel (Composer, Laravel installer)
- Directory structure
- Routing and Controllers
- Basic and advanced routes
- Route groups, middlewares
- Creating and using controllers
- Route parameters and named routes
- Blade Templating Engine
- Blade syntax
- Layouts and inheritance
- Conditionals and loops in Blade
- Request and Response
- Handling forms
- Request validation
- Custom requests
- Redirects and responses
- Database and Eloquent ORM
- Database configuration
- Running migrations
- Creating models
- CRUD with Eloquent
- Query builder vs Eloquent
- Relationships (One-to-One, One-to-Many, Many-to-Many)
- Authentication & Authorization
- Laravel Breeze/Fortify/Jetstream
- Built-in authentication scaffolding
- Middleware (auth, guest)
- Policies and Gates
- File Storage and Uploads
- Uploading files
- File system configuration (local, s3, etc.)
- File validation
- Laravel Artisan & CLI
- Common Artisan commands
- Creating migrations, controllers, models
- Custom artisan commands
- RESTful API Development
- Creating API routes
- Resource controllers
- API authentication (Passport, Sanctum)
- JSON responses
- Testing in Laravel
- Unit testing with PHPUnit
- Feature tests
- Mocking and factories
- Notifications and Mail
- Sending emails (Mailables)
- Using queues
- Sending SMS/Slack notifications
- Queues and Jobs
- Job dispatching
- Queued jobs
- Queue drivers
- Event Handling
- Events and Listeners
- Broadcasting events (Pusher, Laravel Echo)
- Deployment & Security
- .env configuration
- Laravel Mix and versioning
- Deployment via Forge, shared hosting, Docker
- Security best practices (CSRF, XSS, HTTPS)
________________________________________________________________________________________________________________________________________________________________________________
🔧 CodeIgniter 4 Syllabus
- Introduction to CodeIgniter
- CI overview and folder structure
- Installing CodeIgniter 4
- MVC in CodeIgniter
- Routing and Controllers
- Default and custom routes
- Route parameters
- Creating controllers
- Views and Templating
- Loading views
- Passing data to views
- View cells and layouts
- Models and Database
- Creating models
- Query builder
- CRUD operations
- Relationships
- Form Handling & Validation
- Form helper
- Form validation library
- CSRF protection
- Sessions and Cookies
- Session configuration and usage
- Flashdata
- Cookie usage
- File Uploading and Handling
- File upload class
- File validation
- Image manipulation
- Email and Notification
- Email configuration
- Sending emails
- Authentication and Authorization
- Manual login/logout
- Using libraries like Shield or Myth/Auth
- Helpers and Libraries
- URL, Form, Text, Security helpers
- Using and creating custom libraries
- Error Handling & Debugging
- Debug toolbar
- Exception handling
- Logging
- RESTful API with CodeIgniter
- Creating RESTful APIs
- API routes and controllers
- Authentication (JWT, OAuth)
- Security in CodeIgniter
- XSS filtering
- SQL injection prevention
- Content Security Policy (CSP)
________________________________________________________________________________________________________________________________________________________________________________