Course Overview
Overview Of PHP

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

Basic Scripting and Looping Constructs

PHP Scripting Fundamentals
Print Statement
Code Blocks
Primitive Data Types
Defining Constants and Variables
Looping Constructs
do… while
exit and break

Conditional Constructs

True and False Expressions
if, else and elseif
switch/case Statement
The ? (Ternary) Operator

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

Modularity through Include Files

Using Include Files
The Require Statement
Modularizing Code with Functions
Defining and Using Basic Functions

PHP Operators

Logical Operators
Relational Operators
Bitwise Operators
Other Operators
PHP7 Null Coalescing operator
PHP7 Spaceship Operator

PHP Functions

Introduction to Functions
Declaring Functions
Passing Arguments to Functions
Local and Global Scope
Passing Arguments to Functions by Value and Reference
Variable Scoping and Return Values
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

Working with Databases and Forms

Configuring PHP For Database Support
PHP’s Database APIs
MySQL vs. Access
MySQL vs. SQL Server
Database Drivers
Database Driver Class Wrappers
Simple SQL Queries via PHP
Tracking Visitors with Session IDs
Populating Forms
Retrieving Data from Forms

PHP 7 New Features

Function Improvements
New Operators
Unicode Codepoint Syntax
Filtered Unserialize
IntlChar Support

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


Basic OOP in PHP

Defining Object Oriented Programming
Creating New Objects in PHP
PHP Object Syntax
Using Predefined PHP OOP Libraries

Writing OOP PHP

Implementing New Classes
Extending Classes
Understanding Private, Public and Protected
Inheriting Methods and Properties
Overriding Methods and Properties


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

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

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
Using PHP MyAdmin to Configure MySQL

Using Cookies with PHP

Purpose of Cookies
Cookie Myths
Setting Cookies
Retrieving Cookies
Expiring Cookies
Deleting Cookies
Storing Arrays in Cookies

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

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