PHP

About PHP

Hypertext Preprocessor is a general-purpose programming language originally designed for web development. It was originally created by Rasmus Lerdorf in 1994; the PHP reference implementation is now produced by The PHP Group.

Pre-requisites for PHP

Course Contents

  1. Introduction of Web & PHP
    • What is PHP?
    • The history of PHP
    • Why choose PHP?
    • Installation overview
  2. Exploring Data Types
    • Variables
    • Strings
    • String functions
    • Numbers part one: Integers
    • Numbers part two: Floating points
    • Arrays
    • Associative arrays
    • Array functions
    • Booleans
    • NULL and empty
    • Type juggling and casting
    • Constants
  3. Control Structures: Logical Expression
    • If statements
    • Else and elseif statements
    • Logical operators
    • Switch statements
  4. Control Structures: Loops
    • While loops
    • For loops
    • Foreach loops
    • Continue
    • Break
  5. User-Defined Functions
    • Defining functions
    • Function arguments
    • Returning values from a function
    • Multiple return values
    • Scope and global variables
    • Setting default argument values
  6. Debugging
    • Common problems
    • Warnings and errors
    • Debugging and troubleshooting
  7. Building Web Pages with PHP
    • Links and URLs
    • Using GET values
    • Encoding GET values
    • Encoding for HTML
    • Including and requiring files
    • Modifying headers
    • Page redirection
    • Output buffering
  8. Working with Forms and Form Data
    • Building forms
    • Detecting form submissions
    • Single-page form processing
    • Validating form values
    • Problems with validation logic
    • Displaying validation errors
    • Custom validation functions
    • Single-page form with validations
  9. Working with Cookies and Sessions
    • Working with cookies
    • Setting cookie values
    • Reading cookie values
    • Unsetting cookie values
    • Working with sessions
  10. MySQL Basics
    • MySQL introduction
    • Creating a database
    • Creating a database table
    • CRUD in MySQL
    • Populating a MySQL database
    • Relational database tables
    • Populating the relational table
  11. Using PHP to Access MySQL
    • Database APIs in PHP
    • Connecting to MySQL with PHP
    • Retrieving data from MySQL
    • Working with retrieved data
    • Creating records with PHP
    • Updating and deleting records with PHP
    • SQL injection
    • Escaping strings for MySQL
    • Introducing prepared statements
  12. Building a Content Management System (CMS)
    • Blueprinting the application
    • Building the CMS database
    • Establishing your work area
    • Creating and styling the first page
    • Making page assets reusable
    • Connecting the application to the database
  13. Using Site Navigation to Choose Content
    • Adding pages to the navigation subjects
    • Refactoring the navigation
    • Selecting pages from the navigation
    • Highlighting the current page
    • Moving the navigation to a function
  14. Application CRUD
    • Finding a subject in the database
    • Refactoring the page selection
    • Creating a new subject form
    • Processing form values and adding subjects
    • Passing data in the session
    • Validating form values
    • Creating an edit subject form
    • Using single-page submission
    • Deleting a subject
    • Cleaning up
  15. Building the Public Area
    • The public appearance
    • Using a context for conditional code
    • Adding a default subject behaviour
    • The public content area
    • Protecting page visibility
  16. Regulating Page Access
    • User authentication overview
    • Admin CRUD
    • Encrypting passwords
    • Salting passwords
    • Adding password encryption to CMS
    • New PHP password functions
    • Creating a login system
    • Checking for authorization
    • Creating a logout page
  17. Advanced PHP Techniques
    • Using variable variables
    • Applying more array functions
    • Building dates and times: Epoch/Unix
    • Formatting dates and times: Strings and SQL
    • Setting server and request variables
    • Establishing global and static variable scope
    • Making a reference assignment
    • Using references as function arguments
    • Using references as function return values
  18. Introduction to Object-Oriented Programming (OOP)
    • Introducing the concept and basics of OOP
    • Defining classes
    • Defining class methods
    • Instantiating a class
    • Referencing an instance
    • Defining class properties
  19. OOP in Practice
    • Understanding class inheritance
    • Setting access modifiers
    • Using setters and getters
    • Working with the static modifier
    • Reviewing the scope resolution operator
    • Referencing the Parent class
    • Using constructors and destructors
    • Cloning objects
    • Comparing objects
  20. Working with Files and Directories
    • File system basics
    • Understanding file permissions
    • Setting file permissions
    • PHP permissions
    • Accessing files
    • Writing to files
    • Deleting files
    • Moving the file pointer
    • Reading files
    • Examining file details
    • Working with directories
    • Viewing directory content
  21. Sending Emails
    • Configuring PHP for email
    • Sending email with mail()
    • Using headers
    • Reviewing SMTP
    • Using PHPMailer