2011-12-30 17:09:29 -05:00
# miniMVC
miniMVC is a minimalistic Modular MVC framework, with built-in minifier, and pure-PHP templating system.
2011-12-30 17:43:53 -05:00
### Unique features
#### Extensive use of PHP's magic methods on the base class
* `__toString()` method allows a view of the current class object when the current class object is used as a string. If you prefer `var_dump()` or `var_export()` , you can pass the name of that function if you call the `__toString` method directly.
Eg. `$this . "string"` , `$this->__toString()` , `echo $this` ;
2011-12-30 17:09:29 -05:00
2011-12-30 17:43:53 -05:00
* `__call()` method allows (in PHP 5.3+) the dynamic addition of callable closure objects
2011-12-30 17:09:29 -05:00
2011-12-30 17:43:53 -05:00
Eg. `$this->foo = function($baz){}` is callable as `$this->foo()` , with the current object as the last argument
2011-12-30 17:09:29 -05:00
2011-12-30 17:43:53 -05:00
##### Database class is an extension of PHP's PDO class.
2011-12-30 17:09:29 -05:00
2011-12-30 17:43:53 -05:00
* miniMVC supports any database supported by PDO
* Database class also implements the `__toString` method
2011-12-30 17:09:29 -05:00
2011-12-30 17:43:53 -05:00
### File Structure
2011-12-30 17:09:29 -05:00
2011-12-30 17:43:53 -05:00
* index.php - framework frontend
2011-12-30 17:09:29 -05:00
2011-12-30 17:43:53 -05:00
* app - configuration and app-wide files
* config - configuration files
* errors - error page templates
* views - global page templates
2011-12-27 13:30:44 -05:00
2011-12-30 17:43:53 -05:00
* assets - frontend files
* js - javascript files
* css - css files
* config - minifier configuration files
* modules - MVC triads
* controllers - controller classes
* models - model classes
* views - module-specific views
* sys - core framework classes