Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Reefknot framework for PHP
Branch: master


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
* 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.