Intermediate PHP Programming

Learn to build interactive, data-driven sites using intermediate and beyond level PHP programming skills

TT4943

Intermediate and Beyond

4 Days

Course Overview

Geared for experienced web developers, Intermediate PHP Programming is a hands-on course that provides you with the practical skills required to take your basic PHP skills to the next level.  Throughout the workshop style event, you’ll learn how to design and develop dynamic, database-driven Web pages using PHP.  You’ll learn how to connect to any modern database, gaining hands-on experience working with a MySQL database to create database-driven HTML forms and reports.

The course covers E-commerce skills including user authentication, data validation, dynamic data updates, and shopping cart implementation in detail.  You’ll also explore implementing RESTful servers for newer more data driven sites, as well as learning how to configure PHP and the Apache Web Server. Comprehensive hands-on exercises are integrated throughout to reinforce learning and develop real competency.

Working in a hands-on learning environment led by our expert practitioner, you’ll explore:

  • Creating and modifying PHP pages
  • Working with variables and data types
  • Using if/elseif/else statements to control processing conditionally
  • Creating programs that include for, while, and do loops to process statements repeatedly
  • Employing the break, continue, and exit statements to modify default loop behaviors
  • Using and writing functions, including many new PHP features such as type declarations, REST parameters and argument unpacking
  • Using PHP #include
  • Creating arrays
  • Manipulating strings in PHP using built-in functions
  • Maintaining state using cookies, session variables, hidden form fields and query strings
  • Using PHP to manipulate files
  • Identifying and handling the three main types of errors that can occur when programming with PHP
  • The fundamental techniques necessary to create a shopping cart solution
  • Introduction to OOP (Object Oriented Programming) in PHP
  • Using an object-oriented API to access SQL to SELECT, INSERT, UPDATE and DELETE data from tables
  • Using the phpMyAdmin utility to administer the MySQL database
  • Using OOP in PHP to define and use classes

Course Objectives

Working in a hands-on learning environment led by our expert practitioner, you’ll explore:

  • Creating and modifying PHP pages
  • Working with variables and data types
  • Using if/elseif/else statements to control processing conditionally
  • Creating programs that include for, while, and do loops to process statements repeatedly
  • Employing the break, continue, and exit statements to modify default loop behaviors
  • Using and writing functions, including many new PHP features such as type declarations, REST parameters and argument unpacking
  • Using PHP #include
  • Creating arrays
  • Manipulating strings in PHP using built-in functions
  • Maintaining state using cookies, session variables, hidden form fields and query strings
  • Using PHP to manipulate files
  • Identifying and handling the three main types of errors that can occur when programming with PHP
  • The fundamental techniques necessary to create a shopping cart solution
  • Introduction to OOP (Object Oriented Programming) in PHP
  • Using an object-oriented API to access SQL to SELECT, INSERT, UPDATE and DELETE data from tables
  • Using the phpMyAdmin utility to administer the MySQL database
  • Using OOP in PHP to define and use classes

Course Prerequisites

This course is for experienced web developers with a basic working knowledge of HTML.  It can be taught for students new to PHP, although taking the basics class is recommended to spend more time on advanced skills in the Intermediate course if desired.

Take Before: Students should have skills equivalent to or should have recently attended the course(s) below as a pre-requisite:

  • TT4003: Web Essentials: HTML / CSS and JavaScript
  • TT4940 : PHP Programming Fundamentals (if you choose to skip the overview in the TT4943)

Related Courses: PHP Training Series

  • TT4940: PHP Programming Fundamentals
  • TT4943: Intermediate PHP Programming
  • TT4945: Advanced PHP Programming | PHP with XML, Ajax, RESTful Services, Web Services, PHP Security & More

Please see the Related Courses tab for Pre-Requisite course specifics and links, links to similar courses you might review as an alternative, as well as suggested Next-Step Follow-On Courses and Learning Path recommendations.

Course Agenda

  1. PHP Overview
  • Static vs. Dynamic Web Sites
  • Dynamic Content from Databases
  • Developing Dynamic Internet Applications
  • Client-Side Scripting vs. Server-Side Scripting
  • Overview of PHP Advantages and Capabilities
  • Configuring php.ini
  • PHP vs. ASP
  1. Basic Scripting and Looping Constructs
  • PHP Scripting Fundamentals
  • Print Statement
  • Code Blocks
  • Primitive Data Types
  • Defining Constants and Variables
  • Looping Constructs
  • while
  • do… while
  • for
  • exit and break
  1. Conditional Constructs
  • True and False Expressions
  • if, else and elseif
  • switch/case Statement
  • The ? (Ternary) Operator
  • Timestamps
  1. Introduction to the Windows IIS Server or Apache Web Server
  • Server Configuration Files
  • Configuring IIS or Apache for PHP
  • WWW Sites within IIS or Apache
  • Apache Virtual Hosts
  • IIS Virtual Directories
  • Website Properties
  1. Modularity through Include Files
  • Using Include Files
  • The Require Statement
  • Modularizing Code with Functions
  • Defining and Using Basic Functions
  1. PHP Operators
  • Logical Operators
  • Relational Operators
  • Bitwise Operators
  • Other Operators
  • PHP Null Coalescing operator
  • PHP Spaceship Operator
  1. PHP Functions
  • Introduction to Functions
  • Declaring Functions
  • Scope
  • Passing Arguments to Functions
  • Local and Global Scope
  • Passing Arguments to Functions by Value and Reference
  • Variable Scoping and Return Values
  • Recursion
  • Coercive and Strict Type Declarations for Parameters and Return Values
  • Optional and REST Parameters
  • Argument Unpacking
  • Generator Return Expressions
  • Dynamic Function Calls
  • Predefined PHP Functions
  1. Working with Databases and Forms
  • Configuring PHP For Database Support
  • PHP's Database APIs
  • PHP's SQL API
  • MySQL vs. Access
  • MySQL vs. SQL Server
  • Database Drivers
  • Database Driver Class Wrappers
  • ODBC
  • Simple SQL Queries via PHP
  • Tracking Visitors with Session IDs
  • Populating Forms
  • Retrieving Data from Forms
  1. PHP New Features
  • Function Improvements
  • New Operators
  • Unicode Codepoint Syntax
  • Filtered Unserialize
  • IntlChar Support
  • Expectations
  1. Arrays in PHP
  • What are Arrays?
  • Usage of Arrays in PHP
  • Array Indexing
  • Initializing Arrays
  • Operating on Arrays
  • Sorting Arrays
  • One-Dimensional Arrays
  • Multi-Dimensional Arrays
  • Associative Arrays
  • Array Functions
  • Forms and Arrays in Web Applications
  1. Basic OOP in PHP
  • Defining Object Oriented Programming
  • Creating New Objects in PHP
  • PHP Object Syntax
  • Using Predefined PHP OOP Libraries
  1. Writing OOP PHP
  • Implementing New Classes
  • Extending Classes
  • Understanding Private, Public and Protected
  • Inheriting Methods and Properties
  • Overriding Methods and Properties
  1. Working with Data Files in PHP
  • Searching File Contents With Regular Expressions
  • Changing and Editing File Contents
  • Splitting and Joining Information Inside Files
  • String Functions
  • Regular Expression Functions
  • Reading, Writing and Deleting Files
  • Handling File Permissions
  • File Locking
  • Reading Directory Contents
  • Creating and Deleting Directories
  1. Enabling E-Commerce
  • Required Characteristics of an E-Commerce Site
  • Authentication and Authorization
  • Data Validation
  • Building a Custom Shopping Cart
  • Persisting Shopping Cart Data Over Multiple Pages
  • Criteria for Evaluating Third Party Shopping Cart Solutions
  • Open Source vs. Commercial Shopping Cart Solutions
  • Order Processing via the Web
  • Implementing Order System Security using SSL
  • Using Mail Servers (SMTP and Sendmail) for Client Communication
  • Configuring E-mail Output Parameters
  1. Configuring and Using MySQL
  • MySQL as a Client/Server Solution
  • Introduction to MySQL Capabilities as a Powerful RDBMS
  • Installing and Configuring MySQL
  • Connecting to MySQL
  • PHP Functions Specific to MySQL
  • Executing SQL Calls
  • SELECT
  • INSERT
  • FETCH
  • UPDATE
  • DELETE
  • Using PHP MyAdmin to Configure MySQL
  1. Using Cookies with PHP
  • Purpose of Cookies
  • Cookie Myths
  • Setting Cookies
  • Retrieving Cookies
  • Expiring Cookies
  • Deleting Cookies
  • Storing Arrays in Cookies
  1. Miscellaneous PHP Tasks
  • Error Logging
  • Session Management and Maintaining State
  • Web Application Architecture
  • Using Environment Variables
  • Changing Execution by Redirecting to Other URLs
  • Embedding JavaScript within PHP
  • Using the HTTP Protocols to Pass Data
  • Showing Different Content to Different Browsers
  • Getting IP Addresses from Visitors
  1. Implementing RESTful Servers with PHP
  • Understanding RESTful Servers
  • Benefits of PHP for Implementing RESTful Servers
  • Using HTTP Verbs to Access Data
  • Understanding RESTful URIs
  • Defining PHP Objects to Access RESTful URIs
  • Effective Use of OOP Inheritance
  • Implementing a RESTful Server in PHP for a Small Application

Course Materials

Student Materials: Each participant will receive a digital Student Guide and/or Course Notes, code samples, software tutorials, step-by-step written lab instructions (as applicable), diagrams and related reference materials and resource links. Students will also receive the project files (or code, if applicable) and solutions required for the hands-on work.

Hands-On Setup Made Simple! Our dedicated tech team will work with you to ensure our ‘easy-access’ cloud-based course environment, or local installation, is accessible, fully-tested and verified as ready to go well in advance of the course start date, ensuring a smooth start to class and effective learning experience for all participants. In some cases we can also help you install this course locally if preferred. Please inquire for details and options.

Every-Course Extras = High-Value & Long-Term Learning Support! All Public Schedule courses include our unique EveryCourse Extras package (Course Recordings, Live Instructor Follow-on Support, Free *Live* Course Refresh Re-Takes, early access to Special Offers, Free Courses & more). Please inquire for details.

Raise the bar for advancing technology skills

Attend a Class!

Live scheduled classes are listed below or browse our full course catalog anytime

Special Offers

We regulary offer discounts for individuals, groups and corporate teams. Contact us

Custom Team Training

Check out custom training solutions planned around your unique needs and skills.

EveryCourse Extras

Exclusive materials, ongoing support and a free live course refresh with every class.

Mix, Match & Master!
2FOR1: Two Courses, One Price!

Enroll in *any* two public courses (for 2023 *OR* 2024 dates!) by December 31, for one price!  Learn something new, or share the promo!

Click for Details & Additional Offers

Learn. Explore. Advance!

Extend your training investment! Recorded sessions, free re-sits and after course support included with Every Course
Trivera MiniCamps
Gain the skills you need with less time in the classroom with our short course, live-online hands-on events
Trivera QuickSkills: Free Courses and Webinars
Training on us! Keep your skills current with free live events, courses & webinars
Trivera AfterCourse: Coaching and Support
Expert level after-training support to help organizations put new training skills into practice on the job

The voices of our customers speak volumes

Special Offers
Limited Offer for most courses.

SAVE 50%

Learn More