Download the PHP package webdevlabs/phreak without Composer
On this page you can find all versions of the php package webdevlabs/phreak. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download webdevlabs/phreak
More information about webdevlabs/phreak
Files in webdevlabs/phreak
Package phreak
Short Description Phreak! the ultimate development tool for lamez :)
License MIT
Homepage https://www.webdevlabs.com
Informations about the package phreak
Phreak!
ultra-light fast php framework powered by:
- Phroute (url routing)
- PHP-DI (dependency injection container)
- Smarty (template engine)
- Stash (caching library)
- Zend Diactoros (request/response handlers)
- RelayPHP (middleware dispatcher)
- PSR7-Middlewares (collection of PSR-7 middlewares)
Installation
composer create-project webdevlabs/phreak
Serve app localy with the built-in PHP web server
php -S localhost:8000 -t public
Autoloader
Very simple and understandable using the Namespace as file path. All directory names are converted to lowercase, file cases are kept as written. Example:
will autoload the file
Simple Routing
Calls the App\Controllers\User::displayUser($id) method with {id} parameter as an argument
Controller Routing
Calls the App\Controllers\Front.php with the proper request method.
- GET request on http://host/login will call the App\Controllers\Front::getLogin() method.
- POST request on http://host/login will call the App\Controllers\Front::postLogin() method.
- GET request on http://host/article/some-article-uri will call the App\Controllers\Front::getArticle($uri) method with $uri parameter as an argument.
Advanced Routing
Filters
Calls class App\Models\Auth
with method checkLogin()
and break on return false
.
Group all requests under http://host/profile/ through filter
More advanced routings can be found at Phroute's page.
Validation
Simple controller
More advanced examples can be found in the 'modules' directory.
Events
Database
You now have different options for managing your database. There are 2 existing database drivers. Sample database wrapper class DB:: and the well known database mapper Eloquent.
You control what database driver to load directly from config/database.php
Example PDO driver fetch queries:
The new available method for managing your database is Eloquent (from the Laravel framework).
The Eloquent ORM provides a beautiful, simple ActiveRecord implementation for working with your database. Each database table has a corresponding "Model" which is used to interact with that table. Models allow you to query for data in your tables, as well as insert new records into the table.
Examples of phreak eloquent usage can be found at the 'modules/eloq' made for demonstration.
Full documentation can be found at Eloquent's page.
Console Commands
You can also execute phreak controllers from your console/crontab by calling the console.php file where the parameters are the filename of the controller.
Calls the App\Commands\SomeController.php with the proper request method.
All console controllers are located in the "app/commands" folder. The folder location is defined in the 'app/ConsoleController.php' and can be changed.
All versions of phreak with dependencies
tedivm/stash Version ^0.14.1
php-di/php-di Version ^5.4
phroute/phroute Version ^2.1
zendframework/zend-diactoros Version ^1.3
oscarotero/psr7-middlewares Version ^3.20
relay/relay Version ~1.0
illuminate/database Version ^5.5