smichaelsen/phpframework

A lightweight but powerful PHP framework

Installs: 50

Dependents: 0

Stars: 3

Watchers: 2

Forks: 2

Open Issues: 20

Language: PHP


README

This framework is a fork of Luzifer's PHPFramework.
Since the fork wide parts of the system were rewritten or heavily modified. Here's a (not neccessarily complete) overview of the difference to the original PHPFramework:

  • PHP namespaces for PSR-4 autoloading (the former autoloader has been removed)
  • Built as composer package.
  • New static classes to access the configuration and database connection everywhere
  • Cache built upon Nette Caching
  • Support for Domain Driven Design, including Domain Model Objects, Repositories, Collections and an ORM mechanism.

The fork is not compatible to the original framework and not compatible to its own previous versions. After the next major release (2.0) we'll switch to a more backwards compatible development.

Requirements

Successfully tested with

  • Debian / Ubuntu Linux
  • PHP from 5.4.0 up to 5.6.2
  • Apache or nginx
  • MySQL 5.6

Setup

The PHPFramework is designed to work with composer.

Your project composer.json file might look like this:

{
  "name": "vendor/myproject",
  "require": {
    "app-zap/phpframework": "dev-develop"
  },
  "autoload": {
    "psr-4": {
      "Vendor\\MyProject\\": "myproject/classes/"
    }
  }
}
  1. Set up your project with $ composer update
  2. create a sub directory for your application, e.g. myproject
  3. Copy the index.php.example from the PHPFramework folder (should be vendor/appzap/phpframework) to your root level as index.php. Set $application to the name of the directory you just created.

Inside your application directory use this structure:

  • classes/ - Starting point for your PSR-4 autoloadable classes
  • templates/ - Your twig templates
  • routes.php - Returns an array with regular expression routes mapping to controller class names

Start with the following .gitignore file:

vendor/
settings_local.ini

Build Status SensioLabsInsight