We may earn an affiliate commission when you visit our partners.
Course image
Brad Traversy

In this course we will go step by step to build a complete custom MVC (Model View Controller) framework Called TraversyMVC using object oriented PHP. We will build something similar to Codeigniter but much much lighter. This framework is completely open source and you are free to change the name, add stuff, etc and use it as your own. This framework will include...

Read more

In this course we will go step by step to build a complete custom MVC (Model View Controller) framework Called TraversyMVC using object oriented PHP. We will build something similar to Codeigniter but much much lighter. This framework is completely open source and you are free to change the name, add stuff, etc and use it as your own. This framework will include...

  1. A core library class to load controllers & methods from the URL (Also using .htaccess)

  2. A base controller class to load models and views

  3. A custom database library using PDO for all models to interact with the database using prepared statements

Not only will we create the framework but we will build an application on top of it called SharePosts which will be somewhat of a social network to share posts. This application will include..

  1. Full user authentication

  2. Access control for posts

  3. Server side form validation

  4. Bootstrap 4 UI

  5. Posts CRUD

  6. Helper functions (flash messaging & redirects)

We will also be deploying the application to the Internet

This is not a beginner PHP course. You should already understand things like variables, arrays, loops, functions and all of the basics of the PHP language. It is ok if you do not understand OOP fully. Before we start the framework project, we will have a crash course on object-oriented programming with PHP, where you will learn about classes, methods, properties and more.

To learn the basics, please check out the PHP Front To Back series on YouTube by Traversy Media

Enroll now

What's inside

Learning objectives

  • Build a custom mvc framework from absolute scratch
  • Build an application using your custom framework
  • Create a custom pdo class to handle database interactions
  • Complete user authentication using oop & pdo
  • Deploy your custom php application

Syllabus

Course Intro & Setup
Welcome To The Course
Project Files & Questions
XAMPP Environment Setup
Read more
Intro To OOP PHP
About This Section
What Is OOP?
Classes, Properties & Methods
The Constructor & Destructor
Access Modifiers, Getters & Setters
Class Inheritance
Static Methods & Properties
The Framework [Part 1] - The Core
What Is MVC?
Workflow Explanation
Creating The Folder Structure
Direct Everything Through index.php
Bootstrap FIle & Core Class
Loading The Controller From The URL
Mapping Methods & Parameters
The Framework [Part 2] - MVC Workflow
Base Controller Class
Loading Views
Config File & Uploader
Header & Footer Includes
Aside - PDO Crash Course
The Database Class - Part 1
The Database Class - Part 2
Clean Up
The App [1] - Setup & User Authentication
Initial App & Database Setup
Pages, Bootstrap & Navbar
Creating The Users Controller
Register & Login Form Views
Form Validation
User Model & Email Check
User Registration
Custom Flash Messaging
User Login
User Session Data & Logout
The App [2] - Posts Functionality
Posts Controller
Posts Access Control
Post Model & Display
Add Post Form
Inserting Posts
Post Show Details Page
Editing Posts
Deleting Posts
App Deployment
Deploying Our App

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops foundational web development skills and knowledge using object-oriented PHP
Teaches students how to build a custom MVC framework from scratch
Develops practical skills in building web applications with custom frameworks
Builds a strong foundation for students interested in web development with MVC frameworks
Provides hands-on experience with PHP, MySQL, and Bootstrap 4

Save this course

Save Object Oriented PHP & MVC to your list so you can find it easily later:
Save

Reviews summary

A well-presented and engaging course

Learners say this well presented and engaging course is well explained. Students appreciate the clear and detailed explanations provided throughout the course.
Course is engaging.
"This is a very interesting courses."
Course is well explained.
"Well explained and well presented."
Course is well presented.
"This is a very interesting courses."
"Well explained and well presented."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Object Oriented PHP & MVC with these activities:
Review Object-Oriented Programming Concepts
Ensure you have a solid understanding of OOP before starting the course.
Browse courses on OOP
Show steps
  • Review the concepts of classes, objects, inheritance, and polymorphism
  • Create a simple PHP project using OOP
Connect with Experienced PHP Developers
Seek guidance and support from experienced professionals.
Browse courses on PHP
Show steps
  • Attend PHP meetups or conferences
  • Join online PHP communities
  • Reach out to PHP developers on social media
Review Basic PHP Syntax and Functions
Refresh your memory on essential PHP syntax and functions.
Browse courses on PHP
Show steps
  • Review PHP documentation
  • Work through basic PHP exercises
Five other activities
Expand to see all activities and additional details
Show all eight activities
Read Building Web Applications with PHP
Review the basics of PHP, web development, and server-side programming.
View PHP Cookbook on Amazon
Show steps
  • Purchase the book and set aside time to read
  • Read the first three chapters
  • Create a simple PHP script to practice what you've learned
Create a Basic Website with HTML and CSS
Understand the basics of web development by creating a simple website.
Browse courses on HTML
Show steps
  • Find a tutorial on creating a website with HTML and CSS
  • Follow the tutorial and create a basic website
  • Test your website on different devices and browsers
Solve PHP Coding Challenges
Sharpen your PHP skills by solving coding challenges.
Browse courses on PHP
Show steps
  • Find a website or platform that provides PHP coding challenges
  • Solve as many challenges as you can
  • Review your solutions and learn from your mistakes
Build a Simple MVC Framework
Apply your knowledge of MVC by building your own framework.
Browse courses on MVC
Show steps
  • Plan the architecture of your framework
  • Implement the MVC components
  • Test your framework by building a basic website
Write a Blog Post About MVC Frameworks
Strengthen your understanding of MVC by explaining it to others.
Browse courses on MVC
Show steps
  • Choose a topic related to MVC frameworks
  • Research and gather information about the topic
  • Write and publish your blog post

Career center

Learners who complete Object Oriented PHP & MVC will develop knowledge and skills that may be useful to these careers:
Software Engineer
Software Engineers are responsible for the design, development, and maintenance of software systems. They may work on a variety of projects, from small, single-user applications to large, enterprise-scale systems. This course may be particularly useful for Software Engineers who are interested in building custom MVC frameworks or working with PHP and MySQL.
Web Developer
Web Developers are responsible for the design, development, and maintenance of websites. They may work on a variety of projects, from simple, static websites to complex, dynamic web applications. This course may be particularly useful for Web Developers who are interested in building custom MVC frameworks or working with PHP and MySQL.
PHP Developer
PHP Developers are responsible for the design, development, and maintenance of PHP applications. They may work on a variety of projects, from small, single-user applications to large, enterprise-scale systems. This course may be particularly useful for PHP Developers who are interested in building custom MVC frameworks or working with PHP and MySQL.
Database Administrator
Database Administrators are responsible for the design, development, and maintenance of database systems. They may work on a variety of projects, from small, single-user databases to large, enterprise-scale systems. This course may be particularly useful for Database Administrators who are interested in working with PHP and MySQL.
Systems Analyst
Systems Analysts are responsible for the analysis, design, and implementation of computer systems. They may work on a variety of projects, from small, single-user systems to large, enterprise-scale systems. This course may be particularly useful for Systems Analysts who are interested in building custom MVC frameworks or working with PHP and MySQL.
Software Architect
Software Architects are responsible for the design and architecture of software systems. They may work on a variety of projects, from small, single-user applications to large, enterprise-scale systems. This course may be particularly useful for Software Architects who are interested in building custom MVC frameworks.
Computer Scientist
Computer Scientists are responsible for the design, development, and implementation of computer systems. They may work on a variety of projects, from small, single-user systems to large, enterprise-scale systems. This course may be particularly useful for Computer Scientists who are interested in building custom MVC frameworks or working with PHP and MySQL.
Full-Stack Developer
Full-Stack Developers are responsible for the design, development, and maintenance of web applications. They may work on a variety of projects, from small, single-user applications to large, enterprise-scale systems. This course may be particularly useful for Full-Stack Developers who are interested in building custom MVC frameworks or working with PHP and MySQL.
Software Tester
Software Testers are responsible for testing software systems to ensure that they meet the requirements of the end-users. They may work on a variety of projects, from small, single-user applications to large, enterprise-scale systems. This course may be particularly useful for Software Testers who are interested in working with PHP and MySQL.
UX Designer
UX Designers are responsible for the user experience of websites and applications. They may work on a variety of projects, from small, single-user applications to large, enterprise-scale applications. This course may be particularly useful for UX Designers who are interested in building custom MVC frameworks or working with PHP and MySQL.
Web Designer
Web Designers are responsible for the design and layout of websites. They may work on a variety of projects, from small, single-user websites to large, enterprise-scale websites. This course may be particularly useful for Web Designers who are interested in working with PHP and MySQL.
Cloud Architect
Cloud Architects are responsible for the design and architecture of cloud computing systems. They may work on a variety of projects, from small, single-user systems to large, enterprise-scale systems. This course may be particularly useful for Cloud Architects who are interested in building custom MVC frameworks or working with PHP and MySQL.
Data Scientist
Data Scientists are responsible for the analysis and interpretation of data. They may work on a variety of projects, from small, single-user projects to large, enterprise-scale projects. This course may be particularly useful for Data Scientists who are interested in working with PHP and MySQL.
Machine Learning Engineer
Machine Learning Engineers are responsible for the design and development of machine learning systems. They may work on a variety of projects, from small, single-user projects to large, enterprise-scale projects. This course may be particularly useful for Machine Learning Engineers who are interested in working with PHP and MySQL.
Artificial Intelligence Engineer
Artificial Intelligence Engineers are responsible for the design and development of artificial intelligence systems. They may work on a variety of projects, from small, single-user projects to large, enterprise-scale projects. This course may be particularly useful for Artificial Intelligence Engineers who are interested in working with PHP and MySQL.

Reading list

We've selected 16 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Object Oriented PHP & MVC.
Is the definitive guide to design patterns, providing a comprehensive overview of the most important patterns and how to use them effectively. It must-read for any software developer.
Design Patterns: Elements of Reusable Object-Oriented Software is the classic book on design patterns. must-read for anyone who wants to learn about design patterns, as it provides a comprehensive overview of the subject. The book is also a valuable reference for experienced developers who want to learn more about specific design patterns.
Provides a comprehensive guide to writing clean and maintainable code. It covers all aspects of code quality, from naming conventions to refactoring techniques. It must-read for any software developer who wants to improve their coding skills.
Teaches software design patterns in a fun and engaging way, using real-world examples to illustrate the concepts. It great resource for beginners and experienced developers alike.
PHP Object-Oriented Solutions practical guide to object-oriented programming (OOP) in PHP. valuable resource for developers who want to learn how to use OOP to create more efficient and maintainable code. The book also includes a number of case studies that demonstrate how OOP can be used to solve real-world problems.
Provides a comprehensive collection of PHP recipes for solving common programming problems. It covers all the essential PHP topics, and it great resource for anyone who wants to learn more about PHP or improve their PHP skills.
Provides a comprehensive guide to Ruby on Rails, covering all the essential concepts and patterns. It great resource for anyone who wants to learn more about Ruby on Rails or improve their Ruby on Rails skills.
Provides a comprehensive guide to Django, covering all the essential concepts and patterns. It great resource for anyone who wants to learn more about Django or improve their Django skills.
Provides a comprehensive guide to Rust, covering all the essential concepts and patterns. It great resource for anyone who wants to learn more about Rust or improve their Rust skills.
Provides a comprehensive guide to Go, covering all the essential concepts and patterns. It great resource for anyone who wants to learn more about Go or improve their Go skills.
Provides a comprehensive guide to Clojure, covering all the essential concepts and patterns. It great resource for anyone who wants to learn more about Clojure or improve their Clojure skills.
Provides a comprehensive guide to Scala, covering all the essential concepts and patterns. It great resource for anyone who wants to learn more about Scala or improve their Scala skills.
Head First Design Patterns is designed to help the reader understand the concept of design patterns, which are reusable solutions to commonly occurring problems in software design. is particularly useful for readers who are new to design patterns, as it provides a clear and concise explanation of the concepts involved. The book also includes a number of exercises and case studies that help the reader to apply the concepts to real-world problems.
Provides a comprehensive overview of database systems, covering all the essential concepts and technologies. It great resource for anyone who wants to learn more about database systems or improve their database skills.
Provides a practical guide to agile development, covering all the essential concepts and practices. It great resource for anyone who wants to learn more about agile development or improve their agile skills.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Object Oriented PHP & MVC.
Object-Oriented PHP
Most relevant
Object-Oriented PHP
Most relevant
Using MySQL Database with PHP
Most relevant
Building Database Applications in PHP
Most relevant
Learn Object Oriented PHP By Building a Complete Website
Most relevant
Become a WordPress Developer: Unlocking Power With Code
Most relevant
Building a Site with Angular and PHP 7
Most relevant
Classes and Object-oriented Programming in Python 3
Most relevant
Spring Framework: Spring Data JPA 5 with Hibernate
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser