Opleiding: Advanced PHP Programming
The course Advanced PHP Programming covers advanced features of PHP.Object Orientation in PHP
In the first place it is addressed how to deal with Object Orientation in PHP. Attention is paid to the known object oriented concepts like classes and objects, encapsulation and inheritance and how PHP deals with them.
Exception Handling
Also the concept of Exception Handling is covered. New features of PHP 7 are discussed as well.
XML and JSON Access
Another issue is how to handle XML and JSON in PHP. Various XML libraries in PHP are discussed, such as libraries for SAX, DOM, SimpleXML and XPath. Also attention is paid to the handling of JSON data with the JSON library functions.
Regular Expressions
The use of regular expressions in PHP is also part of the subject matter.
Database Access with PDO
Attention is paid to various libraries for database access such as PDO, PHP Data Objects. Database abstraction, transactions and SQL joins are also discussed.
Security
Further attention is payed to several aspects of security such as security threats, authentication and SSL.
PHP and Ajax
In the following module it is discussed how interactive PHP Ajax Web Applications can be developed. The XAJAX Framework is addressed in this respect.
PHP and Web Services
In the module Web Services both SOAP and REST Services are discussed.
Design Patterns
Finally an overview of Design Patterns is given and a number of Design Patterns in PHP applications are treated. In conjunction with the course PHP Programming this course covers the requirements for the Zend PHP Certification exam.
Audience Course Advanced PHP Programming
The course Advanced PHP Programming is intended for PHP web developers with basic knowledge of PHP who want to make advanced use of PHP to write dynamic Web applications.
Prerequisites Course Advanced PHP Programming
To participate in this course knowledge and experience with PHP is required as is discussed in the course PHP Programming.
Realization Training Advanced PHP Programming
The concepts are treated on the basis of presentation slides. Demos are used to clarify the theory. The theory is interspersed with exercises. The course uses PHP 7 which is installed in a WAMP package with the Apache Web server and MySQL.
Certification Advanced PHP Programming
Participants receive an official certificate Advanced PHP Programming after successful completion of the course.
Modules
Module 1 : Classes and Objects
- Object Oriented Programming
- Class Definition
- Creating Objects
- Encapsulation and Data Hiding
- Private Data
- Constructors and Destructors
- $this Variable
- Default Field Values
- Static Members
- Class Constants
- Object References
- Cloning Objects
Module 2 : Inheritance
- Derived Classes
- Base Class Access
- Constructor Visibility
- Overriding Methods
- Pseudo Constants
- Final Classes and Methods
- Abstract Classes
- Implementing Interfaces
- instanceOf Operator
- Polymorphism
- Type Hinting
- Catchable Type Errors
Module 3 : Exception Handling
- Types of Errors
- Exceptions in PHP
- try, catch and finally
- Exception Handling Rules
- Exception Class
- Exception Specialization
- User Defined Exceptions
- Multiple catch Clauses
- Standard PHP Exceptions
- Main Exception Branches
- RunTime Exceptions
- Turn Errors into Exceptions
Module 4 : PHP 7 Features
- Scalar Type Declarations
- Coercive and Strict Mode
- Return Type Declarations
- Null Coalescing Operator
- Spaceship Operator
- Constant Arrays
- Anonymous Classes
- Closure::call()
- Filtered unserialize()
- Expectations
- Use Statement
- Error Handling
Module 5 : XML and JSON
- XML Extensions for PHP
- SimpleXML
- Load XML from File and String
- Reading Attributes and Elements
- Creating XML Data
- Document Object Model
- DOM Validation
- SAX, Simple API for XML
- Using XPath in PHP
- PHP JSON Functions
- JSON Syntax
- Encoding and Decoding JSON
Module 6 : Regular Expressions
- Regular Expressions in PHP
- PHP Regular Expression Functions
- Meta Characters
- Quantifiers and Character Classes
- Regular Expression Modifiers
- Matching Text with preg_match
- Matching on Word Boundaries
- Matching Text with preg_match_all
- Greedy and Non-Greedy Quantifier
- Replacing Text with preg_replace
- Splitting Text with preg_split
- Searching Text with preg_grep
Module 7 : Databases Access
- PHP Data Objects
- Data Access with PDO
- Creating and Closing Connections
- PDO Error Retrieval
- Select Queries
- Fetching Results
- Direct Query Execution
- Array and Column Fetching
- PDO Transactions
- Prepared Statements
- Calling Stored Procedures
Module 8 : Security
- Security Issues
- Register Globals
- Spoofed Form Submissions
- Cross Site Scripting
- Validating Input
- SQL Injection
- Cross Site Request Forgery
- HTTP Authentication
- SSL Overview
- SSL Handshakes
- Configuring SSL in Apache
Module 9 : PHP and Ajax
- Classic Web Application Model
- Ajax Web Application Model
- Typical Ajax Interactions
- Drawbacks of Ajax
- Creating the XMLHttpRequest
- Object Methods
- Sending the Request
- Object Properties
- XMLHttpRequest readyState
- Handling the Response
- PHP and Ajax, XAJAX
Module 10 : Web Services
- REST versus SOAP
- SOAP Messages
- WSDL and Code Generation
- PHP SOAP Extension
- WSDL for SoapService
- PHP SOAP Services
- REST Services
- Everything an Id
- Standard HTTP Methods
- Content Negotiation
Module 11 : Design Patterns
- What are Patterns?
- Singleton Pattern Defined
- Singleton Pattern Usage
- Adapter Pattern
- Factory Patterns
- Factory Method Pattern
- Abstract Factory Pattern
- Abstract Factory Usage
- Observer Pattern
- Iterator Pattern

