EIEIOTECHNOVATION
← Training programmes

EIEIO / PROGRAMMING & DEVELOPMENT

PHP Programming

Course outline

3 days

Duration

3 days

Course Description

This intermedia PHP training program further develops the skills of an experienced PHP Programmer by introducing advanced techniques, tools, and methodologies that can be used to build complex, scalable, PHP applications. This PHP training covers the Object Oriented components of PHP7, including advanced features such as exception handling, and interacting with databases using the PHP Data Objects (PDO) database access layer. Students will also learn how they can leverage common design patterns to build loosely coupled objects and further extend the flexibility of their applications.

This advanced PHP training course also covers using the PEAR repository to leverage existing code and perform operation such as developing client/server applications with XML_RPC and sending multipart email messages, and HTML formatted messages with inline images. Lastly, students will learn to develop, maintain, and scale the performance of web sites using Slim Framework. Course elements include implementing RESTful servers for newer more data driven sites. Students also learn how to configure PHP and the Apache Web Server.

Comprehensive hands on exercises are integrated throughout to reinforce learning and develop real competency.

Target Participants

Any PHP developer who wants to acquire more skills in PHP.

Program Prerequisites

Students attending this advanced PHP training course should have experience developing applications with PHP, as well as using SQL to interface with a database.

Course Objectives

  • Object Oriented PHP Knowledge
  • Regular expression
  • Design Patterns
  • Exception handling
  • Advanced SQL and PDO
  • PHP Security
  • Using PHP Files
  • PHP Slim Framework

Mode of Delivery

Every participant will be provided with course notes and are required to bring in their own laptops for hands-on exercise and practice sessions.

Day 1

  • OOP in PHP
  • Building Classes and Objects
  • Working with Properties and Methods
  • Visibility Modifiers: private, protected, public
  • Constructors and Destructors
  • Inheritance
  • Interfaces
  • Overloading
  • Polymorphism
  • PHP Design Patterns
  • About Design Patterns
  • The Factory Pattern
  • The Singleton Pattern
  • The Observer Pattern
  • The Chain of Command Pattern
  • Try & Catch Exception handling
  • Handling PHP Exceptions
  • Using Try & Catch blocks
  • The Exception Object
  • Generating Custom Exceptions
  • Multiple Catch Blocks
  • Default Exception Processing
  • Using Regular Expressions
  • POSIX Regular Expressions
  • Regexp POSIX Functions
  • PERL style Regular Expressions
  • Matching a string
  • Capturing groups
  • Finding and replacing strings

Day 2

  • Advanced SQL and PDO
  • OOP MsSQL
  • PDO: PHP Data Objects
  • Data-access abstraction layer
  • PDO Requirements
  • PDO Structure
  • Connecting with PDO
  • Querying a Database
  • Prepare() Method
  • Running a Non Parameterised Query
  • Prepare using Named Markers
  • Running a Parameterised Query
  • Binding Named Markers (:marker)
  • Binding Unnamed Markers (?)
  • Fetching Data
  • Iterating Over Fetched Data
  • PHP Security
  • Prevent SQL injections
  • Prevent XSS injections
  • Prepared Statements in PDO and mysqli
  • Encrypting Functions
  • Better Hashing
  • Hash code
  • Htaccess
  • manipulate Apache .htaccess files
  • rewrite URLs
  • Redirect URLs
  • Process Files with PHP
  • Open files
  • Read and Modify files
  • Save and Close files

Day 3

  • Process XML with PHP
  • XML intro
  • PHP 7 simpleXML extension
  • simpleXML requirements and installation
  • loading XML documents from files or strings
  • extracting XML data
  • displaying XML data
  • modifying XML and saving XML
  • PHP Frameworks
  • Why use a Framework?
  • Frameworks overview
  • How to choose a Framework
  • MVC: Model – View – Controller
  • Introduction to PHP Slim Framework
  • Getting Started with Framework
  • Getting started: A skeleton application
  • Unit Testing
  • Modules
  • Routing and controllers
  • Database and models
  • Styling and Translations
  • Forms and actions
  • SOAP and RESTful Web Services
  • Web Services
  • Simple Object Access Protocol (SOAP)
  • Representational State Transfer (REST)
  • SOAP and REST pros and cons
  • Consuming Services
  • Creating Services
  • Conclusion

Programme scope, delivery arrangements and suitability are confirmed during enquiry.