Content
1.Introduction
- What is PHP?
- The history of PHP
- Why choose PHP?
- Installation overview
2.First Step
- Embedding PHP code on a page
- Outputting dynamic text
- The operational trail
- Inserting code comments
3.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
4.Control Structures: Logical Expression
- If statements
- Else and elseif statements
- Logical operators
- Switch statements
5.Control Structures: Loops
- While loops
- For loops
- For each loops
- Continue
- Break
- Understanding array pointers
6.User-Defined Functions
- Defining functions
- Function arguments
- Returning values from a function
- Multiple return values
- Scope and global variables
- Setting default argument values
7.Debugging
- Common problems
- Warnings and errors
- Debugging and troubleshooting
8.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
9.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
10.Working with Cookies and Sessions
- Working with cookies
- Setting & Reading cookie values
- Unsetting cookie values
- Working with sessions
11.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
- 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
- Assignment: Pages CRUD
- Assignment results: Pages CRUD
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.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 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
20.Sending Emails
- Configuring PHP for email
- Sending email with mail()
- Using headers
- Reviewing SMTP
- Using PHP Mailer