PHP Classes

How to Learn to Implement PHP Applications Using a PHP MVC Framework: Example application using an MVC framework

Recommend this page to a friend!
  Info   View files Example   View files View files (42)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog (1)    
Last Updated Ratings Unique User Downloads Download Rankings
2024-04-20 (27 days ago) RSS 2.0 feedNot enough user ratingsTotal: 95 This week: 27All time: 9,855 This week: 3Up
Version License PHP version Categories
php_framework 1.0.0Custom (specified...8Libraries, Design Patterns, PHP 8, Ap...
Description 

Author

This package provides an example application using an MVC framework.

It provides a PHP applications built using controller, service and middleware classes that use framework classes that help using the MVC design pattern.

Currently, the framework provides the following classes:

- A base controller

- Request handler

- Request dispatcher

- Error handler

- Middleware request handler

- Migration

- Model

- Request

- Request

- Router

Picture of Faris AL-Otabi
  Performance   Level  
Innovation award
Innovation award
Nominee: 3x

 

Example

<?php

declare(strict_types=1);

define("ROOT_PATH", dirname(__DIR__));

require
ROOT_PATH . "/vendor/autoload.php";

$dotenv = Dotenv\Dotenv::createImmutable(ROOT_PATH);

$dotenv->load();

set_error_handler("Framework\ErrorHandler::handleError");

set_exception_handler("Framework\ErrorHandler::handleException");

$router = require ROOT_PATH . "/config/routes.php";

$container = require ROOT_PATH . "/config/services.php";

$middleware = require ROOT_PATH . "/config/middleware.php";

$dispatcher = new Framework\Dispatcher($router, $container, $middleware);

$request = Framework\Request::createFromGlobals();

$response = $dispatcher->handle($request);

$response->send();


Details

Welcome to the PHP MVC Framework

This is a simple MVC framework for building web applications in PHP. It's free and open-source.

It was created for the Write PHP Like a Pro: Build an MVC Framework from Scratch course.

That course explains how the framework is put together, building it step-by-step, from scratch. If you've taken the course, then you'll already know how to use it.

If not, please look at the example code in the config and src/App folders for examples of how to use it.

DISCLAIMER

This framework was developed as a teaching example on the aforementioned course. The idea is that by developing this framework on that course, you'll understand how frameworks like Laravel work. No warranty is provided. For more details please see the licence.

Starting an Application using this Framework

  1. First, download the framework, either directly or by cloning the repo.
  2. Configure your web server to have the public folder as the web root.
  3. Make a copy of the .env.example file and call it .env, and enter your database configuration data.
  4. Create routes, controllers, views, models, middleware etc.

Build This Framework From Scratch

Signup for the course here and understand how this framework is built from scratch, putting it all together step by step.


  Files folder image Files  
File Role Description
Files folder imageconfig (4 files)
Files folder imagepublic (3 files)
Files folder imagesrc (2 directories)
Files folder imageviews (3 files, 2 directories)
Accessible without login Plain text file .htaccess Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file composer.lock Data Auxiliary data
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file README.md Doc. Documentation

 Version Control Unique User Downloads Download Rankings  
 100%
Total:95
This week:27
All time:9,855
This week:3Up