Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Reefknot framework for PHP
PHP
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
_unittest
access
app/web
autoload
di
http
iface
input
l10n/gb/input/validate/prop
markup/widget
nbproject
storage/session
util
LICENSE
bootstrap.php
composer.json
readme.txt

readme.txt

Reefknot PHP framework

This is very much a work in progress and at an early stage of development.  I do
think the validation package is up to the point where it's at least useful 
though, and I'm hoping to add packages on a regular basis.  

The first priority for Reefknot is to build a framework that follows best
practice both in terms of PHP coding and in terms of good coding in general.  
This means trying to stick to the following principles: 

* No magic methods unless it's unavoidable
* No Singletons or Registry objects
* Loose coupling
* Inversion of control via Dependency Injection
* Programming to interfaces to allow easy substitution of components
* Exceptions are reserved for exceptional events. Everything else is dealt with
  through traditional flow control
** Exceptions should only be thrown due to programmer error. A user of a 
   Reefknot application should never see an exception
* DRY
* Comprehensive unit tests with as little mocking of dependants or PHP services
  as possible. 

A reefknot is a common type knot used for a wide range of tasks
Something went wrong with that request. Please try again.