O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learning Path: Learn Web Programming with PHP

Video Description

As a tool for generating dynamic web content, PHP can't be beat. It's easy, flexible, fast, and full of possibilities. That's why it's used in some of the world's most popular web applications like Facebook, Wikipedia, Drupal, and WordPress. With this Learning Path you'll acquire the necessary PHP skills to develop your own web applications, along with an understanding of key technologies like MySQL and Git that support your web development projects.

Table of Contents

  1. What The Course Covers 00:11:22
  2. Course Setup Using XAMPP 00:07:00
  3. Installing XAMPP On Windows 00:06:50
  4. Installing MAMP On The Mac 00:05:05
  5. Installing XAMPP On Linux 00:04:53
  6. Configuring PHP And MySQL 00:11:59
  7. Configuring Apache 00:09:34
  8. Using Editors And IDEs 00:06:59
  9. Saving Your Code 00:02:38
  10. Searching PHP And MySQL Documentation 00:07:55
  11. Getting Help And Verifying XAMPP Status 00:07:05
  12. Setup And Finding Course Files 00:06:04
  13. Lab: Building A New Website 00:03:56
  14. Solution: Building A New Website 00:03:33
  15. Creating Variables In PHP 00:05:32
  16. Assigning Different Data Types 00:09:20
  17. Performing Arithmetic Operations 00:05:44
  18. Adding Comments To The Code 00:02:31
  19. Assigning Constant Values 00:04:09
  20. Using The printf Command To Format A String 00:04:26
  21. Understanding The substr Command 00:04:42
  22. Working With Strings 00:08:12
  23. Debugging An Application 00:07:39
  24. Lab: Mixing HTML And PHP 00:03:04
  25. Solution: Mixing HTML And PHP 00:04:43
  26. Working With Numeric Keys 00:03:24
  27. Working With Associative Arrays 00:02:01
  28. Assigning Values To Arrays 00:05:14
  29. Creating A Multidimensional Array 00:05:31
  30. Searching Arrays 00:05:08
  31. Sorting Arrays 00:07:33
  32. Removing Values From Arrays 00:04:21
  33. Measuring Array Differences 00:03:27
  34. Merging Arrays 00:01:27
  35. Lab: Using An Array To Generate A Drop Down Menu 00:02:09
  36. Solution: Using An Array To Generate A Drop Down Menu 00:04:20
  37. Comparing Values 00:05:21
  38. Using if, else, And elseif 00:07:12
  39. Using switch 00:03:16
  40. Setting Up A for Loop 00:04:35
  41. Configuring while And do while Loops 00:05:34
  42. Using A foreach Loop 00:05:58
  43. Branching With continue, break, And goto 00:05:19
  44. Lab: Using Loops To Display Rows Of Data On A Web Page 00:02:17
  45. Solution: Using Loops To Display Rows Of Data On A Web Page 00:03:23
  46. Using Built-In Functions 00:05:36
  47. Creating Your Own Functions 00:06:29
  48. Returning Values 00:03:53
  49. Defining Mandatory And Optional Parameters 00:04:11
  50. Using Parameters By Reference 00:05:32
  51. Handling A Variable Number Of Parameters 00:04:11
  52. Understanding Global Variables 00:06:41
  53. Lab: Creating A Function Which Paginates Rows Of Data 00:02:52
  54. Solution: Creating A Function Which Paginates Rows Of Data 00:08:33
  55. Defining Classes 00:09:46
  56. Adding Properties 00:04:56
  57. Creating Methods 00:07:54
  58. Determining The Visibility Level 00:07:59
  59. Building Classes By Inheritance 00:05:14
  60. Handling Exceptions 00:07:18
  61. Introducing The MVC (Model-View-Controller) Design Pattern 00:05:27
  62. Lab: Building An MVC Website Using OOP 00:01:54
  63. Solution: Building An MVC Website Using OOP 00:03:08
  64. Loading Code With include 00:02:48
  65. Loading Code With require 00:04:34
  66. Loading Code Once Only 00:04:05
  67. PHP Extensions And PECL 00:06:16
  68. PHP Libraries And PEAR 00:04:32
  69. Lab: Downloading An External Library 00:02:20
  70. Solution: Downloading An External Library 00:03:36
  71. Using The f* Family 00:07:16
  72. Using The *file* Family 00:05:10
  73. Understanding Streams 00:07:22
  74. Updating The Error_Log 00:05:42
  75. Parsing Directory Structures 00:04:15
  76. Lab: Reading A CSV File 00:03:31
  77. Solution: Reading A CSV File 00:08:38
  78. Understanding RDBMS Terminology 00:05:52
  79. Command Line Access 00:04:24
  80. Using phpMyAdmin 00:09:57
  81. Configuration 00:12:16
  82. Creating A Database 00:08:48
  83. Managing Tables - Part 1 00:07:57
  84. Managing Tables - Part 2 00:07:08
  85. Understanding Indexes And Relationships 00:06:48
  86. Establishing Relationships And Constraints 00:09:34
  87. Lab: Defining Tables And Relationships For A Website 00:04:33
  88. Solution: Defining Tables And Relationships For A Website 00:08:47
  89. Retrieving Data Using SELECT 00:10:46
  90. Adding Data Using INSERT 00:08:42
  91. Editing Data Using UPDATE 00:07:57
  92. Removing Data Using DELETE 00:05:31
  93. Performing Advanced Queries Using JOIN 00:11:51
  94. Lab: Creating Select, Insert, Update, And Delete SQL Statements 00:02:25
  95. Solution: Creating Select, Insert, Update, And Delete SQL Statements 00:10:42
  96. Understanding The Different MySQL Database Extensions 00:10:39
  97. Reading Data From A Table 00:09:57
  98. Writing Data To A Table 00:11:33
  99. Updating Data In A Table 00:09:56
  100. Deleting Data From A Table 00:09:52
  101. Reading Data From Multiple Tables 00:10:15
  102. Lab: Display Products And Members Using PHP And MySQL 00:01:56
  103. Solution: Display Products And Members Using PHP And MySQL 00:10:46
  104. Understanding The Three Regular Expression Command Sets 00:08:28
  105. Defining Basic Patterns 00:09:13
  106. Using preg_match For Form Validation 00:08:38
  107. Finding All Matches With preg_match_all 00:04:17
  108. Using preg_replace For Intelligent Search And Replace 00:06:42
  109. Lab: Using Regular Expressions To Validate Form Data 00:03:17
  110. Solution: Using Regular Expressions To Validate Form Data 00:10:13
  111. Sending Mail Using mail 00:10:14
  112. Using External Mail Libraries 00:10:49
  113. Adding An Attachment To Email 00:07:00
  114. Sending Email Using SMTP 00:04:00
  115. Lab: Using PHP To Send A Confirmation Email 00:03:11
  116. Solution: Using PHP To Send A Confirmation Email 00:04:54
  117. Understanding Timestamps 00:06:48
  118. Using The date Command 00:04:20
  119. Using The DateTime Class 00:07:43
  120. Performing Date Arithmetic 00:09:27
  121. Lab: Capturing Date Of Birth Using DateTime 00:01:38
  122. Solution: Capturing Date Of Birth Using DateTime 00:08:46
  123. Reading Inbound Information From Built-In Global Variables 00:05:56
  124. Handling Cookies 00:12:41
  125. Managing Sessions 00:09:21
  126. Setting Headers And Performing Redirection 00:07:43
  127. Reading Incoming Header Information 00:06:34
  128. Using Output Buffering 00:06:32
  129. Deploying An Application To A Website 00:07:53
  130. Lab: Using Cookies And Sessions To Implement A Shopping Cart 00:07:32
  131. Solution: Using Cookies And Sessions To Implement A Shopping Cart - Part 1 00:07:32
  132. Solution: Using Cookies And Sessions To Implement A Shopping Cart - Part 2 00:06:56
  133. Capturing Form Data 00:16:20
  134. Understanding Form Input Elements 00:07:56
  135. Working With Select Tags 00:08:11
  136. Defining Checkboxes And Radio Buttons 00:09:14
  137. Handling File Uploads 00:08:41
  138. Securing Form Data: Inbound Filtering 00:06:48
  139. Securing Form Data: Form Data Validation 00:09:17
  140. Securing Form Data: Output Escaping 00:06:39
  141. Lab: Integrating Form Data With The Database 00:02:42
  142. Solution: Integrating Form Data With The Database 00:07:02
  143. About The Author 00:02:03
  144. Welcome to the Course 00:00:49
  145. Course Overview 00:02:13
  146. The PHP Command Line 00:04:17
  147. PHP's Built-In Web Server 00:05:15
  148. PHP for Message Queue Workers 00:04:57
  149. Anonymous Functions 00:06:27
  150. Variadic Functions and Argument Unpacking 00:04:15
  151. Generators 00:02:49
  152. Upgrading PHP Tips 00:13:45
  153. PHP's Filter Extension 00:06:35
  154. Passwords in PHP 00:06:30
  155. Object-Oriented Programming 00:02:40
  156. Objects, Classes, and Inheritance 00:08:52
  157. Autoloading and Code Organization 00:05:51
  158. Namespaces 00:08:25
  159. Interfaces and Type Hinting 00:08:26
  160. Abstract Classes 00:03:08
  161. Traits 00:04:23
  162. Exceptions 00:09:41
  163. The Standard PHP Library 00:08:23
  164. PHP-FIG and the PSRs 00:02:53
  165. Autoloading PSRs 00:04:09
  166. Code Style PSRs 00:05:35
  167. Current and Future PSRs 00:04:22
  168. Introduction to Composer 00:07:25
  169. Publish Your Own Packages with Composer 00:05:27
  170. Security Considerations with Composer 00:02:44
  171. PDO (PHP Database Objects) 00:03:25
  172. Selecting Data with PDO 00:11:41
  173. Making Other Kinds of Queries with PDO 00:04:44
  174. Closing 00:01:15
  175. What To Expect 00:01:41
  176. About The Author 00:01:28
  177. How To Access Your Working Files 00:01:15
  178. Git - Modern Source Control 00:02:17
  179. Configuring Your Git Tools 00:08:15
  180. Cloning An Existing Project 00:05:24
  181. Creating A Fresh Repository 00:04:22
  182. Bringing An Existing Project Into Git 00:05:52
  183. Handling Dependency Management Files 00:02:57
  184. Git Hosting Platforms 00:04:42
  185. Forking Repositories 00:06:26
  186. Working With Multiple Remotes 00:04:58
  187. Your Individual Git Workflow 00:04:36
  188. Staging Changes 00:07:05
  189. Unstaging Changes 00:07:29
  190. Comparing Changes 00:06:50
  191. Understanding Git Commits 00:06:46
  192. The Git Log Command 00:06:44
  193. Creating Branches 00:06:45
  194. Branching Strategies 00:09:52
  195. Merging Branches 00:04:03
  196. Tracking Branches 00:03:47
  197. Merge Conflicts 00:08:11
  198. Git Undo 00:07:25
  199. Fast-Forward Merges 00:05:04
  200. Rebase To Bring Your Branch Up To Date 00:07:31
  201. Rebase Conflicts 00:09:24
  202. Rebase Interactive 00:09:31
  203. Code Reviews 00:08:21
  204. Git Diff Tool 00:06:00
  205. Configuring Diff For Specific File Types 00:05:51
  206. Using Git Hooks To Improve Quality 00:05:39
  207. Tag Your Releases 00:05:39
  208. Reacting To Git Changes 00:07:05
  209. The Build Step 00:05:51
  210. Continuous Integration And Git 00:07:21
  211. From Git To Deployment 00:06:20
  212. Course Summary And Recommended Reading 00:05:08
  213. Wrap-Up 00:01:09