Download the PHP package robertwesner/simple-mvc-php without Composer

On this page you can find all versions of the php package robertwesner/simple-mvc-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package simple-mvc-php

Simple MVC for PHP

![](https://github.com/RobertWesner/simple-mvc-php/actions/workflows/tests.yml/badge.svg) ![](https://raw.githubusercontent.com/RobertWesner/simple-mvc-php/image-data/coverage.svg) ![](https://img.shields.io/github/v/release/RobertWesner/simple-mvc-php) [![License: MIT](https://img.shields.io/github/license/RobertWesner/simple-mvc-php)](../../raw/main/LICENSE.txt)

A small library for creating PHP web servers.

Initially created for private use in place of Node-JS when creating very simple websites. Now able to run more complex applications. Feel free to use if it fits your needs.

Websites using this:

Features

Installation

New Docker project

This creates a Docker PHP-FPM + Nginx Project and is the preferred way of use.

New project

This creates a new project with the required folder structure.

Existing project

If you already have a project, require the package and migrate your files manually.

Usage

Project structure

Routing scripts

You can create any amount of routing scripts. They define a mapping between a URL and a controller function or method.

Example:

api.php

view.php

Using Controller Classes

More complex Logic can be handled with class controllers.

Resolving the controller requires robertwesner/dependency-injection.

See: demo routing

Autowiring

Installing robertwesner/dependency-injection allows for automatic resolution of Route dependencies:

Configuration

Configurations are optional and stored in $PROJECT_ROOT$/configuration, written in PHP.

You can run this server with zero configuration if you do not need the following features.

Container

File: container.php

Configures additional autowiring steps if you intend to use robertwesner/dependency-injection in complex use cases. You can manually define container instances with this configuration.

Bundles

File bundles.php

Loads external bundles (implementing BundleInterface) which may configure their own Container values.

Feel free to store configurations for your bundles in a subfolder inside $PROJECT_ROOT$/configuration.

Example: $PROJECT_ROOT$/configurations/database/database.yml

Error handling

Requires the use of configuration files, refer to the previous section for mor information.

Use your preferred ThrowableHandler by instantiating it as ThrowableHandlerInterface. By default, without registering a handler, no exception information will be stored or printed.

Example: PrintThrowableHandler outputs directly to the browser

Example: StdoutThrowableHandler outputs into the server stderr and doesn't leak to the browser

You can implement your own handler quite easily for additional tasks like sending automated mails.


All versions of simple-mvc-php with dependencies

PHP Build Version
Package Version
Requires php Version >=8.4
twig/twig Version ^3.19
guzzlehttp/psr7 Version ^2.7
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package robertwesner/simple-mvc-php contains the following files

Loading the files please wait ....