PHP Development Bootcamp: Zero to Mastery
23h 47m 23s
English
Paid
May 20, 2024
Learn modern PHP and become a better developer. This is the only PHP course you need to go from complete beginner to coding your own PHP applications and working with existing PHP applications.
More
Learn modern PHP. We guarantee you that this is the most comprehensive and up-to-date PHP Bootcamp course to go from absolute beginner to mastering PHP web development, getting hired, and advancing your career.
Watch Online PHP Development Bootcamp: Zero to Mastery
Join premium to watch
Go to premium
# | Title | Duration |
---|---|---|
1 | Learn PHP with Luis Ramirez | 00:55 |
2 | What is PHP? | 03:16 |
3 | PHP Environment | 06:43 |
4 | The PHP Interpreter | 05:45 |
5 | Running a PHP Script | 06:45 |
6 | PHP Tags | 03:45 |
7 | The echo Keyword | 05:58 |
8 | Comments | 02:08 |
9 | Variables | 05:21 |
10 | Assignment Operator | 04:12 |
11 | Data Types | 04:36 |
12 | The var_dump Function | 03:11 |
13 | Null Data Type | 03:23 |
14 | Boolean Data Type | 02:29 |
15 | Integers and Floats | 03:44 |
16 | String Data Type | 06:42 |
17 | Arrays | 04:45 |
18 | Associative Arrays | 03:32 |
19 | Multidimensional Arrays | 03:39 |
20 | Type Casting | 07:52 |
21 | Type Juggling | 02:25 |
22 | Arithmetic Operators | 06:23 |
23 | Assignment Operators | 02:27 |
24 | Comparison Operators | 05:42 |
25 | Error Control Operator | 01:34 |
26 | Incrementing and Decrementing Numbers | 02:54 |
27 | Logical Operators | 04:28 |
28 | Operator Precedence | 05:40 |
29 | Constants | 04:58 |
30 | String Concatenation | 03:28 |
31 | Terminology: Expressions | 02:55 |
32 | Control Structures | 08:38 |
33 | Switch Statements | 06:07 |
34 | Match Expressions | 04:31 |
35 | Functions | 04:56 |
36 | Function Parameters | 04:10 |
37 | Function Return Values | 02:25 |
38 | Type Hinting & Union Types | 04:19 |
39 | Strict Types | 02:41 |
40 | Short-Circuiting | 02:53 |
41 | While Loop | 04:58 |
42 | For Loop | 04:41 |
43 | Foreach Loop | 02:59 |
44 | Getting Started with Challenges | 04:24 |
45 | Coding Solution: Resistor Colors | 03:28 |
46 | Coding Solution: Two Fer | 02:41 |
47 | Coding Solution: Leap Year | 05:15 |
48 | Predefined Constants | 05:31 |
49 | Alternative Syntax for Constants | 04:45 |
50 | Unsetting Variables | 04:36 |
51 | Reading the PHP Documentation | 06:29 |
52 | Rounding Numbers | 07:35 |
53 | Alternative if statement syntax | 05:11 |
54 | Avoiding Functions in Conditions | 06:36 |
55 | Including PHP Files | 10:06 |
56 | Variadic Functions | 04:29 |
57 | Named Arguments | 03:01 |
58 | Global Variables | 04:41 |
59 | Static Variables | 02:18 |
60 | Anonymous and Arrow Functions | 08:59 |
61 | Callable Type | 02:18 |
62 | Passing by Reference | 04:42 |
63 | Array Functions | 13:16 |
64 | Destructuring Arrays | 02:22 |
65 | Working with Files | 08:03 |
66 | Exploring the Challenges | 03:08 |
67 | Coding Solution: Robot Name | 05:01 |
68 | Coding Solution: Armstrong Numbers | 05:49 |
69 | Coding Solution: Series | 07:45 |
70 | What is OOP (Object-Oriented Programming)? | 04:52 |
71 | Classes | 05:54 |
72 | Properties | 05:48 |
73 | Magic Methods | 05:28 |
74 | Constructor Property Promotion | 01:59 |
75 | Custom Methods | 03:57 |
76 | Null-safe Operator | 02:24 |
77 | Understanding Namespaces | 02:51 |
78 | Creating a Namespace | 03:48 |
79 | Working with Namespaces | 09:51 |
80 | Autoloading Classes | 06:07 |
81 | Using Constants in Classes | 02:16 |
82 | Static Properties and Methods | 05:45 |
83 | OOP Principle: Encapsulation | 07:47 |
84 | OOP Principle: Abstraction | 02:36 |
85 | OOP Principle: Inheritance | 05:47 |
86 | Protected Modifier | 02:01 |
87 | Overriding Methods | 09:14 |
88 | Abstract Classes and Methods | 09:39 |
89 | Interfaces | 05:08 |
90 | OOP Principle: Polymorphism | 07:24 |
91 | Anonymous Classes | 03:55 |
92 | Docblocks | 05:54 |
93 | Throwing Exceptions | 06:57 |
94 | Custom Exceptions | 03:56 |
95 | Catching Exceptions | 05:35 |
96 | The DateTime Class | 11:35 |
97 | Iterator and Iterable Type | 12:21 |
98 | OOP Challenges Overview | 01:41 |
99 | Coding Solution: Nucleotide Count | 02:33 |
100 | Coding Solution: Grade School | 05:59 |
101 | Project Overview | 04:53 |
102 | Text Editors | 03:57 |
103 | Understanding the LAMP stack | 05:41 |
104 | Exploring XAMPP | 02:43 |
105 | The htdocs Folder | 05:28 |
106 | Configuring Virtual Hosts in Apache | 11:20 |
107 | Configuring PHP | 04:38 |
108 | Creating an Application Class | 04:19 |
109 | Bootstrapping an Application | 04:26 |
110 | The Command Line | 06:57 |
111 | Understanding PSR | 03:10 |
112 | Installing Composer | 07:09 |
113 | JSON Crash Course | 05:06 |
114 | Initializing Composer | 07:14 |
115 | Generating Autoload Files | 03:16 |
116 | Including Autoload Files | 02:26 |
117 | What is Git? | 02:40 |
118 | Using GitHub | 06:18 |
119 | Exploring Git Files | 05:55 |
120 | Exercise: Imposter Syndrome | 02:57 |
121 | Understanding Routing | 03:58 |
122 | Apache Mod Rewrite | 07:28 |
123 | The htaccess File | 06:16 |
124 | Sugar Functions | 02:57 |
125 | Creating a Router Class | 02:33 |
126 | Adding Routes | 04:57 |
127 | Understanding HTTP Methods | 05:02 |
128 | Supporting HTTP Methods in Routes | 02:30 |
129 | Normalizing Paths | 03:36 |
130 | Exploring Regular Expressions | 07:10 |
131 | Regular Expressions in PHP | 03:07 |
132 | MVC Design Pattern | 06:26 |
133 | Creating a Controller | 01:57 |
134 | Registering Controllers | 02:53 |
135 | Class Magic Constant | 02:46 |
136 | Dispatching a Route | 04:40 |
137 | Finding Matches with Regular Expressions | 04:29 |
138 | Instantiating Classes with Strings | 02:59 |
139 | PSR-12 Auto Formatting | 05:16 |
140 | Understanding Template Engines | 02:41 |
141 | Creating a Template Engine Class | 02:09 |
142 | Setting a Base Path | 04:30 |
143 | Rendering a Template | 03:01 |
144 | Extracting Arrays | 03:57 |
145 | Understanding Output Buffering | 04:35 |
146 | Creating an Output Buffer | 02:51 |
147 | Loading Assets | 03:26 |
148 | Adding Partials | 04:15 |
149 | Exercise: Creating an About Page | 04:48 |
150 | Escaping Data | 07:31 |
151 | Autoloading Functions | 04:58 |
152 | Understanding Dependency Injection | 03:32 |
153 | Creating a Container | 02:35 |
154 | External Definitions File | 04:41 |
155 | Factory Design Pattern | 04:10 |
156 | Merging Arrays | 02:21 |
157 | Reflective Programming | 06:57 |
158 | Validating Classes | 03:34 |
159 | Validating the Constructor Method | 02:29 |
160 | Retrieving the Constructor Parameters | 02:25 |
161 | Validating Parameters | 06:39 |
162 | Invoking Factory Functions | 04:43 |
163 | Instantiating a Class with Dependencies | 03:37 |
164 | Understanding Middleware | 03:12 |
165 | Supporting Router Middleware | 02:38 |
166 | Adding Middleware | 02:28 |
167 | Creating Middleware | 01:53 |
168 | Interface Contracts | 04:03 |
169 | Chaining Callback Functions | 04:07 |
170 | Looping through Middleware | 03:10 |
171 | Supporting Dependency Injection in Middleware | 02:15 |
172 | Global Template Variables | 03:07 |
173 | Singleton Pattern | 07:34 |
174 | Preparing the Registration Form | 04:56 |
175 | Configuring the Form | 06:52 |
176 | Handling POST Data | 03:03 |
177 | Understanding Services | 04:17 |
178 | Creating a Validator Class | 05:39 |
179 | Validation Rule Contract | 05:43 |
180 | Registering a Rule | 04:26 |
181 | Applying Rules to Fields | 07:58 |
182 | Storing Validation Errors | 03:06 |
183 | Custom Validation Exception | 05:58 |
184 | HTTP Status Codes | 05:00 |
185 | Custom Middleware | 03:49 |
186 | Redirection with Headers | 06:26 |
187 | Passing on the Errors | 03:19 |
188 | HTTP Referrer | 02:49 |
189 | Understanding Sessions | 02:24 |
190 | Enabling Sessions | 04:21 |
191 | Handling Session Exceptions | 04:04 |
192 | Common Session Error | 06:17 |
193 | Closing the Session Early | 01:06 |
194 | Injecting Errors into a Template | 05:13 |
195 | Flashing Errors | 01:58 |
196 | Displaying Errors | 03:01 |
197 | Validating Emails | 04:39 |
198 | Supporting Rule Parameters | 05:39 |
199 | Minimum Validation Rule | 03:52 |
200 | In Validation Rule | 03:31 |
201 | Exercise: URL Validation Rule | 02:58 |
202 | Password Matching Rule | 03:46 |
203 | Prefilling a Form | 06:02 |
204 | Filtering Sensitive Data | 03:50 |
205 | Introduction to SQL | 05:30 |
206 | Creating a Database | 02:32 |
207 | Creating Tables | 09:13 |
208 | Inserting Data | 04:06 |
209 | Reading Data | 03:42 |
210 | Updating Data | 01:57 |
211 | Deleting Data | 02:19 |
212 | Using PHPMyAdmin | 07:45 |
213 | Enabling PDO Extension | 04:28 |
214 | Custom Composer Scripts | 03:47 |
215 | Understanding DSN | 01:45 |
216 | Creating a DSN String | 06:05 |
217 | Connecting to a Database | 03:01 |
218 | The PDOException Class | 03:43 |
219 | Refactoring the Database Connection | 05:14 |
220 | Querying the Database | 04:31 |
221 | Fetch Modes | 04:10 |
222 | SQL Injections | 05:28 |
223 | Prepared Statements | 05:47 |
224 | Understanding Transactions | 03:09 |
225 | Creating Transactions with PDO | 04:19 |
226 | Understanding Data Modeling | 03:58 |
227 | Designing a User Table | 10:11 |
228 | Creating a Table in an SQL File | 06:08 |
229 | Loading Files | 02:25 |
230 | Conditionally Creating Tables | 02:09 |
231 | Refactoring the Query | 02:25 |
232 | Database Container Definition | 01:33 |
233 | Understanding Environment Variables | 05:38 |
234 | Creating Environment Variables | 05:22 |
235 | Ignoring Environment Files | 01:59 |
236 | Passing on the Container to Definitions | 04:31 |
237 | Counting Records with SQL | 02:54 |
238 | Supporting Prepared Statements | 02:07 |
239 | Validating Duplicate Emails | 04:45 |
240 | Exercise: Inserting a User | 04:20 |
241 | Understanding Hashing | 05:33 |
242 | Hashing a Password | 05:30 |
243 | Preparing the Login Page | 02:52 |
244 | Exercise: Validating the Login Form | 07:01 |
245 | Validating the User’s Credentials | 09:46 |
246 | Understanding Session Hijacking | 03:19 |
247 | Configuring Session Cookies | 06:26 |
248 | Regenerating a Session ID | 01:52 |
249 | Protecting Routes | 03:48 |
250 | Applying Route Middleware | 07:01 |
251 | Logging out of the Application | 02:56 |
252 | Authenticating Registered Users | 02:44 |
253 | Understanding CSRF | 02:08 |
254 | Generating a CSRF Token | 04:30 |
255 | Rendering Tokens | 03:11 |
256 | Validating CSRF Tokens | 07:12 |
257 | Conditionally Rendering Sections | 01:55 |
258 | Designing the Transactions Table | 03:43 |
259 | Understanding Database Relationships | 05:48 |
260 | Adding Foreign Keys | 06:34 |
261 | Preparing the Create Transaction Page | 04:11 |
262 | Validating Transactions | 03:54 |
263 | Validating Maximum Character Length | 04:29 |
264 | Validating Numbers | 02:42 |
265 | Validating Dates | 04:52 |
266 | Creating a Transaction | 07:05 |
267 | Retrieving Transactions | 06:09 |
268 | Formatting Dates with SQL | 03:31 |
269 | Query Parameters | 05:49 |
270 | SQL LIKE Clause | 03:11 |
271 | Filtering Transactions | 01:36 |
272 | Escaping the Search Term | 01:59 |
273 | SQL Limit Clause | 02:31 |
274 | Limiting Results | 05:09 |
275 | Previous Page Link | 04:21 |
276 | Next Page Link | 05:57 |
277 | Page Number Links | 07:09 |
278 | Preparing the Edit Route | 06:03 |
279 | Replacing Strings with Regular Expressions | 06:18 |
280 | Extracting Route Parameter Values | 06:51 |
281 | Edit Transaction Template | 07:16 |
282 | Updating a Transaction | 06:52 |
283 | Overriding HTTP Methods | 05:56 |
284 | Deleting a Transaction | 03:21 |
285 | Preparing the Receipt Controller | 03:58 |
286 | Encoding File Data | 02:40 |
287 | Exercise: Creating a Receipt Service | 06:26 |
288 | Validating a File Upload | 03:37 |
289 | Validating File Sizes | 02:52 |
290 | Validating Filenames | 03:44 |
291 | Validating File Mime Types | 03:51 |
292 | Generating a Random Filename | 03:37 |
293 | Moving Uploaded Files | 04:54 |
294 | Designing the Receipts Table | 04:57 |
295 | Storing the Receipt | 03:01 |
296 | Displaying Receipts | 07:45 |
297 | Validating the Download Request | 04:14 |
298 | Downloading Files | 06:32 |
299 | Deleting a Receipt | 04:35 |
300 | Magic Numbers | 05:55 |
301 | Destroying Session Cookies | 05:51 |
302 | Rendering a 404 Page | 07:11 |
303 | Configuring a Server | 08:46 |
304 | Understanding Deployment | 03:37 |
305 | Configuring an Application | 02:25 |
306 | Setting up our Project | 13:24 |
307 | Conclusion | 01:25 |
308 | Thank You! | 01:18 |
Read Book PHP Development Bootcamp: Zero to Mastery
# | Title |
---|---|
1 | Complete PHP Developer Bootcamp - Zero To Mastery - Course Handbook |
Similar courses to PHP Development Bootcamp: Zero to Mastery
Complete Modern PHP Developer Course in 2023udemy
Duration 23 hours 40 minutes 59 seconds
Course
Docker for PHP Developersudemy
Duration 7 hours 35 minutes 34 seconds
Course
Make a Google search engine clone: JavaScript PHP and MySQLudemy
Duration 5 hours 47 minutes 11 seconds
Course
Writing Readable PHPspatie.be
Duration 2 hours 40 minutes 32 seconds
Course
PHP with Laravel - Create a Restaurant Management Systemudemy
Duration 9 hours 39 minutes 12 seconds
Course
phpspec: Testing... *Designing* with a Bitesymfonycasts
Duration 2 hours 54 minutes 25 seconds
Course
Make a Spotify Clone from Scratch: JavaScript PHP and MySQLudemy
Duration 14 hours 59 minutes 31 seconds
Course
Ultimate PHP, Laravel, CSS & Sass! Learn PHP, Laravel & Sassudemy
Duration 95 hours 30 minutes
Course
Master Laravel & Create High-Level Applications with Laraveludemy
Duration 14 hours 44 minutes 48 seconds
Course
Write PHP Like a Pro: Build a PHP MVC Framework From Scratchudemy
Duration 2 hours 51 minutes 57 seconds
Course