01 Introduction_ MVC concepts and development environment setup/001 Introduction.mp43.66MB
01 Introduction_ MVC concepts and development environment setup/002 The problem with writing web applications_ how NOT to structure your code.mp46.3MB
01 Introduction_ MVC concepts and development environment setup/003 The MVC pattern_ What it is and how it can help you write better code.mp44.81MB
01 Introduction_ MVC concepts and development environment setup/004 Install a web server_ database server and PHP on your computer.mp43.98MB
01 Introduction_ MVC concepts and development environment setup/005 Start writing the framework_ Create the folders and configure the web server.mp45.77MB
02 Routing_ how URLs are processed in an MVC framework/007 Create a central entry point to the framework_ the front controller.mp44.12MB
02 Routing_ how URLs are processed in an MVC framework/008 Configure the web server to have pretty URLs.mp43.02MB
02 Routing_ how URLs are processed in an MVC framework/010 Create and require (not include) the router class.mp43.25MB
02 Routing_ how URLs are processed in an MVC framework/011 Create the routing table in the router_ and add some routes.mp42.97MB
02 Routing_ how URLs are processed in an MVC framework/012 Match the requested route to the list of routes in the routing table.mp44.54MB
03 Advanced routing_ add simpler but more powerful routes/013 Introduction to advanced routing using route variables.mp41.93MB
03 Advanced routing_ add simpler but more powerful routes/014 How to do complex string comparisons_ an introduction to regular expressions.mp45.74MB
03 Advanced routing_ add simpler but more powerful routes/015 Using special characters in regular expressions_ advanced pattern matching.mp43.97MB
03 Advanced routing_ add simpler but more powerful routes/016 Write even more powerful regular expressions_ use character sets and ranges.mp43.06MB
03 Advanced routing_ add simpler but more powerful routes/017 Extract parts of strings using regular expression capture groups.mp43.87MB
03 Advanced routing_ add simpler but more powerful routes/018 Get the controller and action from a URL with a fixed structure.mp46.44MB
03 Advanced routing_ add simpler but more powerful routes/019 Replace parts of strings using regular expressions.mp43.61MB
03 Advanced routing_ add simpler but more powerful routes/020 Get the controller and action from a URL with a variable structure.mp48.72MB
03 Advanced routing_ add simpler but more powerful routes/021 Add custom variables of any format to the URL.mp44.27MB
04 Controllers and actions/022 Controllers and actions_ an introduction.mp42.01MB
04 Controllers and actions/023 How to create objects and run methods dynamically.mp42.15MB
04 Controllers and actions/024 Dispatch the route_ create the controller object and run the action method.mp48.51MB
04 Controllers and actions/025 How to better organise your classes by using namespaces.mp45.27MB
04 Controllers and actions/026 Class autoloading_ load classes automatically without having to require them.mp44.74MB
04 Controllers and actions/027 Load classes automatically_ add namespaces and an autoload function.mp45.01MB
04 Controllers and actions/028 Remove query string variables from the URL before matching to a route.mp44.13MB
04 Controllers and actions/029 Pass route parameters from the route to all controllers.mp43.92MB
04 Controllers and actions/030 The __call magic method_ how to call inaccessible methods in a class.mp43.73MB
04 Controllers and actions/031 Action filters_ call a method before and after every action in a controller.mp46.62MB
04 Controllers and actions/033 Organise controllers in subdirectories_ add a route namespace option.mp44.74MB
05 Views/034 Views_ an introduction.mp41.07MB
05 Views/035 Display a view_ create a class to render views and use it in a controller.mp43.16MB
05 Views/036 Output escaping_ what it is_ why do it_ and how and when to do it.mp45.66MB
05 Views/037 Pass data from the controller to the view.mp42.59MB
05 Views/038 Templating engines_ what they are and how they can improve your PHP code.mp44.56MB
05 Views/039 Make views easier to create and maintain_ add a template engine.mp44.29MB
05 Views/042 Remove repetition in the view templates_ add a base template to inherit from.mp43.13MB
06 Manage code using Composer/043 Install third-party PHP code libraries automatically using Composer.mp43.35MB
06 Manage code using Composer/044 Installing and using Composer.mp44.16MB
06 Manage code using Composer/045 Install the template engine library using Composer.mp42.36MB
06 Manage code using Composer/046 Include all package classes automatically using the Composer autoloader.mp42.07MB
06 Manage code using Composer/047 Use the Composer autoloader to load the template engine library.mp41.38MB
06 Manage code using Composer/048 Add your own classes to the Composer autoloader.mp43.12MB
06 Manage code using Composer/049 Replace the autoload function with the Composer autoloader.mp43.48MB
07 Models/050 Models_ an introduction.mp42.31MB
07 Models/051 Create a database and check you can connect to it from PHP.mp44.36MB
07 Models/052 An introduction to PDO_ why it makes working with databases in PHP easier.mp44.6MB
07 Models/053 Add a model_ get data from the database and display it in a view.mp43.87MB
07 Models/054 Optimise the database connection_ connect only on demand and reuse it.mp44.96MB
08 Configuration and error handling/056 Put application configuration settings in a separate file.mp43.29MB
08 Configuration and error handling/057 How PHP reports problems_ errors_ exceptions_ and how to handle them.mp45.21MB
08 Configuration and error handling/058 Handle errors_ convert errors to exceptions and add an exception handler.mp45.47MB
08 Configuration and error handling/059 PHP configuration settings_ where to find them and how to change them.mp44.87MB
08 Configuration and error handling/060 Configure PHP to display error messages.mp42.9MB
08 Configuration and error handling/061 Show detailed error messages to developers_ friendly error messages to users.mp44.84MB
08 Configuration and error handling/062 Categorise different types of error using HTTP status codes.mp46.04MB
08 Configuration and error handling/063 Add views to make error pages look nicer in production.mp42.83MB
09 Conclusion/064 A brief introduction to some popular frameworks.mp46.24MB