Course Outline
Introduction
Refresher on PHP Programming Basics
Using PHP Namespaces
- Overview of Namespaces
- Defining Namespaces
- Using Namespaces
- Working with the Composer
- Understanding Name Resolution Rules
Using PHP Interfaces
- Creating an Interface
- Extending an Interface
- Working with Predefined PHP Interfaces
Working with PHP Traits
- Understanding PHP Traits
- Creating a PHP Trait
Object-Oriented Programming with Advanced PHP
- Using PHP Magic Methods
- Using PHP Constructors
- Using PHP Deconstructors
- Using PHP Singletons
Implementing PHP Abstract Classes
- Overview of PHP Abstract Classes
- Creating PHP Abstract Classes
Using the PHP Iterator
- Creating a PHP Iterator
- Using Stacking Iterators
- Using SPL Iterators
Using PHP Generators
- Overview of PHP Generators
- Creating a PHP Generator
Implementing PHP Password Hashing, Password Verification, and Password Updating
Working with PHP Type Hints
- Understanding the Basic PHP Type Hints
- Using PHP Strict Type Declarations
- Working with PHP Return Types
Working with PHP Closures
- Overiew of PHP Closures
- Creating a PHP Closure
- Using Advanced Closures
Using PHP Exceptions
- Understanding PHP Exceptions
- Throwing an Exception
- Implementing Nested Exceptions
- Implementing PHP SPL Exceptions
- Extending PHP Exceptions
- Using the Finally Block
Debugging and Logging in PHP
Using Functions in PHP
- Understanding Code Reuse
- Understanding Function Feeding
- Returning Data from a Function
- Demo: Call-by-Value vs. Call-by-Reference
Using Date and Time Related Extensions
Using PHP Regular Expressions (REGEX) Functions
Using String Manipulation Functions
Runtime Error Handling in PHP
Operating on Files in PHP
Accessing Database Storage in PHP
Implementing Design Patterns in PHP
Implementing the Mail Function in PHP
- Demo: Sending and Retrieving Emails in PHP
- Demo: Using SMTP (Simple Main Transfer Protocol) to Send E-mails
Using PEAR and cURL in PHP
- Demo: Using the PHP Extension and Application Repository (PEAR)
- Demo: Implementing Basic cURL
- Demo: Webscraping Using cURL
Working with Web Services in PHP
- Using the Simple Object Access Protocol (SOAP)
- Using Web Services Description Language (WSDL)
Understanding Introspection and Reflection in PHP
- Demo: Using Instrospection API
- Demo: Using Reflection API
- Demo: Using Smarty Templates
Working with PHP Sessions
- Understanding Sessions
- Demo: PHP Session Mechanism
Overview of PHP Frameworks
- CakePHP
- Yii
- Zend
- CodeIgniter
Implementing Best Practices and Security in PHP
- Understanding Best Practices
- Demo: Using Encryption
Troubleshooting
Summary and Conclusion
Requirements
- Basic PHP programming experience
Audience
- Web developers
- Anyone interested in increasing existing PHP knowledge
Testimonials (5)
I liked how Gunnar wrote pretty much all of the code on the fly as we were going through, but that there was plenty of pre-prepared material on the google drive that I can refer to after the training. The code Gunnar wrote based on the sample data I provided beforehand was also extremely useful and also made the training relevant to our own datasets.
Ranvir - Schroders Personal Wealth
Course - Visual Studio Code
Topics that were discussed, lots of live code examples, trainers attitude towards group
Weronika - ATOS PGS sp. z o.o.
Course - Reactive Programming with Angular RxJS
Real-life examples.
Kristoffer Opdahl - Buypass AS
Course - Web Security with the OWASP Testing Framework
Though an online training, the interactivity with the trainer was remarkable and was always available to provide valuable sources to complement the training. I am very satisfied.
Nuno Marques - MULTICERT, S.A.
Course - Functional Reactive Programming with Java 9 and RxJava
Pacing, depth, and explanations were all superb. It's clear Scott is an expert on the subject and learning from him was super enjoyable.