Course outline for PHP

Pre-requisites for learning PHP

Developers must have knowledge of client/server computing concepts and relational databases

Lab Setup

A system with Linux Operating System (either Ubuntu or Fedora is preferred)

Duration

4 days

Training Mode

Online training for PHP

We provide:

  • Instructor led live training
  • Self-paced learning with access to expert coaches
  • 24x7 access to cloud labs with end to end working examples

All jnaapti sessions are 100% hands-on. All our instructors are engineers by heart. Activities are derived from real-life problems faced by our expert faculty. Self-paced hands-on sessions are delivered via Virtual Coach.

Classroom training for PHP

Classroom sessions are conducted in client locations in:

  • Bengaluru
  • Chennai
  • Hyderabad
  • Mumbai
  • Delhi/Gurgaon/NCR

Note: Classroom training is for corporate clients only

Detailed Course Outline for PHP

Introduction to Web Application Programming

  • Static v/s Dynamic applications
  • Client/server computing
  • TCP/IP protocol
  • Application layer protocol – HTTP
  • HTTP Request and Response
  • Asynchronous requests with XMLHttp
  • 3 tier architectures
  • Client side applications and frameworks – HTML/JS/CSS
  • Server side languages and frameworks
  • Overview of Model/View/Controller (MVC )
  • Tooling
    • Using tooling to inspect page content (HTML/JS/CSS)
    • Using tooling to inspect request and response headers
    • Using tooling to inspect traffic flow
  • Analysis of a few popular client/server applications
  • Examples of MVC frameworks

PHP – Getting Started

  • Installing PHP
  • Configuring Apache2 for PHP
  • A simple Hello World page

PHP – Language Basics

  • Basic syntax
  • PHP Tags
  • Interspersing PHP with HTML
  • Comments

PHP – Types

  • Booleans, Integers, Floating point numbers, Strings
  • Arrays
  • Resources
  • NULL
  • Type conversion/juggling

PHP – Variables

  • Naming rules and conventions
  • Predefined variables
  • Variable scopes
  • Variable variables
  • Constants
  • Predefined constants

PHP – More Language Features

  • Expressions
  • Operators
    • Operator precedence
    • Arithmetic, Assignment, Bitwise, Comparison, Error Control, Execution, Increment/Decrement, Logical, String, Array and Type Operators
  • Control Structures
    • if, else, elseif
    • while, do-while
    • for, foreach
    • break, continue
    • switch, declare, return
    • require, include, require_once, include_once
    • goto

PHP – Functions

  • User defined functions
  • Function arguments
    • Pass by value/pass by reference
    • Variable length argument lists
  • Returning values
    • Returning an array of values
    • Returning a reference
  • Variable functions
  • Callbacks
  • Anonymous functions
  • Built-in functions
  • Full function reference

PHP – Classes and Objects

  • Creating a class and an object
  • Class constants
  • Constructors and Destructors
  • Visibility
    • public, private and protected
    • Method and Property Visibility
    • Visibility from other objects
  • Inheritance
  • Scope resolution operator
  • Static properties and methods
  • Abstract classes
  • Interfaces and Interface Inheritance
  • Traits
  • Overloading

PHP – More Objects

  • Object Iteration
  • Magic Methods
  • Final Keyword
  • Object Cloning
  • Comparing Objects
  • Type Hinting
  • Late Static Bindings
  • Objects and references
  • Object Serialization
  • Converting a scalar to object

PHP – Exception Handling

  • Catching and Throwing Exceptions
  • try/catch/finally
  • Creating your own Exceptions

PHP – Namespaces

  • Overview of namespaces
  • Defining namespaces
  • Defining multiple namespaces
  • Using namespaces
  • Name resolution rules

PHP - Misc

  • Predefined Variables
  • Generators
  • References
  • Handling Security Issues

MVC and MVC Frameworks

  • Introduction to Model View Controller (MVC)
  • Separating the MVC concerns in plain vanilla PHP
  • Introduction to MVC frameworks
  • What to expect from a MVC framework
  • How to choose a good MVC framework

PHP – MVC Frameworks

  • Comparison of PHP MVC Frameworks
  • Case studies
    • Drupal
    • Joomla/Wordpress
    • CodeIgniter