Mô tả

Updated to use PHP  8

PHP is one of the most popular programming languages in the world. It powers the entire modern web. It provides millions of high-paying jobs all over the world.

That's why you want to learn PHP too. And you came to the right place!


Why is this the right PHP course for you?

This is the most complete and in-depth PHP course on Udemy (and maybe the entire internet!). It's an all-in-one package that will take you from the very fundamentals of PHP, all the way to building modern applications.

You will learn modern PHP from the very beginning, step-by-step. I will guide you through practical and fun code examples, important theory about how PHP works behind the scenes, and a beautiful and complete project.

You will become ready to continue learning advanced back-end frameworks like Symfony, Laravel, Code Igniter, or Slim.

You will also learn how to think like a developer, how to plan application features, how to architect your code, how to debug code, and a lot of other real-world skills that you will need in your developer job.

And unlike other courses, this one actually contains beginner, intermediate, advanced, and even expert topics, so you don't have to buy any other course in order to master PHP from the ground up!

By the end of the course, you will have the knowledge and confidence that you need in order to ace your job interviews and become a professional developer.


So what exactly is covered in the course?

  • Build a beautiful real-world project for your portfolio! In this project, you will learn how to plan and architect your applications using flowcharts and common PHP patterns

  • Master the PHP fundamentals: variables, if/else, operators, boolean logic, functions, arrays, objects, loops, strings, and more

  • Learn modern PHP 8 from the beginning: arrow functions, destructuring, spread operator, variadic arguments, nullish coalesing operator, and more

  • Deep dive into object-oriented programming: encapsulation, abstraction, inheritance, and polymorphism. This section is like a small standalone course.

  • Dive deep into design patterns: MVC, singleton pattern, factory pattern, dependency injection, and PSR concepts.

  • Learn modern tools that are used by professional web developers: Composer and Packagist

Check out the course curriculum for an even more detailed overview of the content :)


This is what's also included in the package:

  • Up-to-date HD-quality videos, that are easy to search and reference

  • Downloadable starter code and final code for each section

  • Downloadable free eBook with summaries of the core concepts taught in each section.

  • Free support in the course Q&A

  • Coding challenges with solutions included.


This course is for you if

  • You want to gain a true and deep understanding of PHP

  • You have been trying to learn PHP but still don't really understand PHP, or still don't feel confident to code real apps

  • You are interested in using a library/framework like Symfony, Laravel, Slim, or Code Igniter in the future

  • You already know PHP and are looking for an advanced course. This course includes expert topics!

  • You want to get started with programming, PHP is a great first language!

Does any of these look like you? If so, then start this adventure today, and join me and thousands of other developers in the only PHP course that you will ever need!

Bạn sẽ học được gì

Yêu cầu

Nội dung khoá học

19 sections

Introduction

3 lectures
What is PHP?
05:03
Download the Free E-Book
00:08
PHP Environment
06:42

Working with Data

29 lectures
The PHP Interpreter
05:44
Running a PHP Script
06:44
PHP Tags
03:44
The echo Keyword
05:56
Comments
02:07
Variables
05:20
Assignment Operator
04:11
Data Types
04:35
The var_dump Function
03:10
Null Data Type
03:22
Boolean Data Type
02:28
Integers and Floats
03:43
String Data Type
06:41
Exercise: Data Types
1 question
Arrays
04:44
Associative Arrays
03:31
Multidimensional Arrays
03:38
Type Casting
07:50
Type Juggling
02:24
Arithmetic Operators
06:23
Assignment Operators
02:26
Comparison Operators
05:41
Error Control Operator
01:33
Incrementing and Decrementing Numbers
02:53
Logical Operators
04:27
Operator Precedence
05:39
Constants
04:57
String Concatenation
03:27
Variables
6 questions

Adding Logic

14 lectures
Terminology: Expressions
02:54
Control Structures
08:37
Switch Statements
06:06
Match Expressions
04:30
Functions
04:55
Function Parameters
04:09
Function Return Values
02:24
Type Hinting & Union Types
04:17
Strict Types
02:40
Short-Circuiting
02:52
While Loop
04:56
For Loop
04:39
Foreach Loop
02:57
Logic
5 questions

Beginner PHP Challenges

7 lectures
Getting Started with Challenges
04:47
Resistor Colors
1 question
Coding Solution: Resistor Colors
03:31
Two Fer
1 question
Coding Solution: Two Fer
02:39
Leap Year
1 question
Coding Solution: Leap Year
05:19

Filling in the Gaps

19 lectures
Predefined Constants
05:28
Alternative Syntax for Constants
04:43
Unsetting Variables
04:33
Reading the PHP Documentation
06:26
Rounding Numbers
07:32
Alternative if statement syntax
05:09
Avoiding Functions in Conditions
06:33
Including PHP Files
10:03
Variadic Functions
04:26
Named Arguments
02:59
Global Variables
04:39
Static Variables
02:15
Anonymous and Arrow Functions
08:57
Callable Type
02:16
Passing by Reference
04:39
Array Functions
13:14
Destructuring Arrays
02:19
Working with Files
08:01
Section 5 PHP Quiz
5 questions

More PHP Challenges

7 lectures
Exploring the Challenges
03:23
Robot Name
1 question
Coding Solution: Robot Name
04:58
Armstrong Numbers
1 question
Coding Solution: Armstrong Numbers
05:59
Series
1 question
Coding Solution: Series
07:43

Object-Oriented Programming (OOP)

28 lectures
What is OOP (Object-Oriented Programming)?
04:49
Classes
05:52
Properties
05:46
Magic Methods
05:25
Constructor Property Promotion
01:57
Custom Methods
03:55
Null-safe Operator
02:22
Understanding Namespaces
02:48
Creating a Namespace
03:45
Working with Namespaces
09:48
Autoloading Classes
06:04
Using Constants in Classes
02:14
Static Properties and Methods
05:42
OOP Principle: Encapsulation
07:45
OOP Principle: Abstraction
02:34
OOP Principle: Inheritance
05:45
Protected Modifier
01:59
Overriding Methods
09:12
Abstract Classes and Methods
09:37
Interfaces
05:06
OOP Principle: Polymorphism
07:22
Anonymous Classes
03:52
Docblocks
05:52
Throwing Exceptions
06:54
Custom Exceptions
03:54
Catching Exceptions
05:33
The DateTime Class
11:33
Iterator and Iterable Type
12:19

OOP Challenges

5 lectures
OOP Challenges Overview
01:44
Nucleotide Count
1 question
Coding Solution: Nucleotide Count
02:28
Grade School
1 question
Coding Solution: Grade School
05:57

Master Project: Framework Foundation

19 lectures
Project Overview
04:50
Text Editors
03:55
Understanding the LAMP stack
05:38
Exploring XAMPP
02:41
The htdocs Folder
05:26
Configuring Virtual Hosts in Apache
11:18
Configuring PHP
04:36
Creating an Application Class
04:17
Bootstrapping an Application
04:24
The Command Line
06:54
Understanding PSR
03:08
Installing Composer
07:07
JSON Crash Course
05:03
Initializing Composer
07:12
Generating Autoload Files
03:14
Including Autoload Files
02:24
What is Git?
02:37
Using GitHub
06:15
Exploring Git Files
05:53

Master Project: Routing

19 lectures
Understanding Routing
03:56
Apache Mod Rewrite
07:26
The htaccess File
06:13
Sugar Functions
02:54
Creating a Router Class
02:31
Adding Routes
04:55
Understanding HTTP Methods
04:59
Supporting HTTP Methods in Routes
02:27
Normalizing Paths
03:34
Exploring Regular Expressions
07:07
Regular Expressions in PHP
03:04
MVC Design Pattern
06:24
Creating a Controller
01:54
Registering Controllers
02:51
Class Magic Constant
02:43
Dispatching a Route
04:37
Finding Matches with Regular Expressions
04:27
Instantiating Classes with Strings
02:56
PSR-12 Auto Formatting
05:13

Master Project: Template Engines

12 lectures
Understanding Template Engines
02:38
Creating a Template Engine Class
02:07
Setting a Base Path
04:27
Rendering a Template
02:58
Extracting Arrays
03:54
Understanding Output Buffering
04:32
Creating an Output Buffer
02:48
Loading Assets
03:23
Adding Partials
04:12
Exercise: Creating an About Page
04:45
Escaping Data
07:29
Autoloading Functions
04:56

Master Project: Containers and Dependency Injection

22 lectures
Understanding Dependency Injection
03:30
Creating a Container
02:32
External Definitions File
04:40
Factory Design Pattern
04:08
Merging Arrays
02:19
Reflective Programming
06:55
Validating Classes
03:32
Validating the Constructor Method
02:28
Retrieving the Constructor Parameters
02:23
Validating Parameters
06:37
Invoking Factory Functions
04:41
Instantiating a Class with Dependencies
03:35
Understanding Middleware
03:10
Supporting Router Middleware
02:36
Adding Middleware
02:26
Creating Middleware
01:55
Interface Contracts
04:01
Chaining Callback Functions
04:05
Looping through Middleware
03:08
Supporting Dependency Injection in Middleware
02:13
Global Template Variables
03:04
Singleton Pattern
07:32

Master Project: Form Validation

31 lectures
Preparing the Registration Form
04:55
Configuring the Form
06:50
Handling POST Data
03:01
Understanding Services
04:15
Creating a Validator Class
05:37
Validation Rule Contract
05:41
Registering a Rule
04:24
Applying Rules to Fields
07:56
Storing Validation Errors
03:04
Custom Validation Exception
05:56
HTTP Status Codes
04:58
Custom Middleware
03:47
Redirection with Headers
06:24
Passing on the Errors
03:17
HTTP Referrer
02:47
Understanding Sessions
02:22
Enabling Sessions
04:19
Handling Session Exceptions
04:02
Common Session Error
06:15
Closing the Session Early
01:04
Injecting Errors into a Template
05:11
Flashing Errors
01:56
Displaying Errors
02:59
Validating Emails
04:37
Supporting Rule Parameters
05:37
Minimum Validation Rule
03:50
In Validation Rule
03:29
Exercise: URL Validation Rule
02:56
Password Matching Rule
03:44
Prefilling a Form
06:00
Filtering Sensitive Data
03:48

Master Project: MySQL

27 lectures
Introduction to SQL
05:28
Creating a Database
02:31
Creating Tables
09:11
Inserting Data
04:05
Reading Data
03:40
Updating Data
01:55
Deleting Data
02:17
Using PHPMyAdmin
07:43
Enabling PDO Extension
04:26
Custom Composer Scripts
03:45
Understanding DSN
01:43
Creating a DSN String
06:03
Connecting to a Database
02:59
The PDOException Class
03:41
Refactoring the Database Connection
05:12
Querying the Database
04:29
Fetch Modes
04:08
SQL Injections
05:26
Prepared Statements
05:45
Understanding Transactions
03:07
Creating Transactions with PDO
04:17
Understanding Data Modeling
03:56
Designing a User Table
10:09
Creating a Table in an SQL File
06:06
Loading Files
02:23
Conditionally Creating Tables
02:07
Refactoring the Query
02:23

Master Project: User Registration and Authentication

27 lectures
Database Container Definition
01:31
Understanding Environment Variables
05:37
Creating Environment Variables
05:20
Exercise: Updating the CLI to use Environment Variables
00:15
Ignoring Environment Files
01:58
Passing on the Container to Definitions
04:29
Counting Records with SQL
02:53
Supporting Prepared Statements
02:06
Validating Duplicate Emails
04:43
Exercise: Inserting a User
04:18
Understanding Hashing
05:31
Hashing a Password
05:28
Preparing the Login Page
02:51
Exercise: Validating the Login Form
06:59
Validating the User’s Credentials
09:44
Understanding Session Hijacking
03:17
Configuring Session Cookies
06:24
Regenerating a Session ID
01:50
Protecting Routes
03:46
Applying Route Middleware
06:59
Logging out of the Application
02:54
Authenticating Registered Users
02:43
Understanding CSRF
02:07
Generating a CSRF Token
04:29
Rendering Tokens
03:09
Validating CSRF Tokens
07:10
Conditionally Rendering Sections
01:53

Master Project: CRUD Transactions

27 lectures
Designing the Transactions Table
03:42
Understanding Database Relationships
05:46
Adding Foreign Keys
06:32
Preparing the Create Transaction Page
04:09
Validating Transactions
03:52
Validating Maximum Character Length
04:27
Validating Numbers
02:40
Validating Dates
04:50
Creating a Transaction
07:04
Retrieving Transactions
06:07
Formatting Dates with SQL
03:29
Query Parameters
05:47
SQL LIKE Clause
03:10
Filtering Transactions
01:34
Escaping the Search Term
01:58
SQL Limit Clause
02:29
Limiting Results
05:08
Previous Page Link
04:20
Next Page Link
05:55
Page Number Links
07:07
Preparing the Edit Route
06:01
Replacing Strings with Regular Expressions
06:16
Extracting Route Parameter Values
06:49
Edit Transaction Template
07:15
Updating a Transaction
06:51
Overriding HTTP Methods
05:55
Deleting a Transaction
03:19

Master Project: Handling File Uploads

15 lectures
Preparing the Receipt Controller
03:56
Encoding File Data
02:38
Exercise: Creating a Receipt Service
06:25
Validating a File Upload
03:35
Validating File Sizes
02:50
Validating Filenames
03:42
Validating File Mime Types
03:49
Generating a Random Filename
03:35
Moving Uploaded Files
04:52
Designing the Receipts Table
04:56
Storing the Receipt
03:00
Displaying Receipts
07:44
Validating the Download Request
04:12
Downloading Files
06:30
Deleting a Receipt
04:33

Master Project: Everything Else

3 lectures
Magic Numbers
05:54
Destroying Session Cookies
05:49
Rendering a 404 Page
07:10

Master Project: Deployment

5 lectures
Understanding Deployment
03:35
Configuring a Server
08:44
Configuring an Application
02:23
Setting up our Project
13:23
Conclusion
01:23

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.