greg-md / php-view
A powerful View for PHP.
v1.0.0
2017-01-20 21:22 UTC
Requires
- php: ^5.6 || ^7.0
- greg-md/php-support: dev-master
Requires (Dev)
- phpunit/phpunit: 5.7.*
This package is auto-updated.
Last update: 2024-12-24 20:33:32 UTC
README
A powerful View for PHP.
Table of Contents:
Requirements
- PHP Version
^7.1
Compilers
- PHP
- Blade
How It Works
First of all, you have to initialize a Viewer:
$viewsDirectory = __DIR__ . '/views'; $viewer = new \Greg\View\Viewer($viewsDirectory);
Optionally, you can add a view compiler. For example a Blade Compiler specially created for the Viewer:
// Turn it to a callable, to load only when using blade templates. $viewer->addExtension('.blade.php', function () { $compiledViewsDirectory = __DIR__ . '/compiled'; return new \Greg\View\ViewBladeCompiler($compiledViewsDirectory); });
By default it will use Renderer as an instance of a template.
Note: If you want to use your own compiler, it has to be an instance of Compiler Strategy.
Now, you can render views where you want in your application.
Create a template file in the views directory. For example welcome.blade.php
:
<html> <body> <h1>Hello, {{ $name }}</h1> </body> </html>
Use welcome
template in your application:
$content = $viewer->render('welcome', [ 'name' => 'Greg', ]); echo $content;
Documentation
- Viewer - The view manager;
- Renderer - Instance of a template. Could be accessed via
$this
variable in the template. - Loader - A special loader for Renderer which will give access only to its public properties and methods;
- Blade Compiler - An independent template compiler;
- View Blade Compiler - An extended Blade Compiler, specially for the Viewer.
- Compiler Strategy - A strategy for custom compilers;
- View Compiler Strategy - A strategy for custom Viewer compilers;
License
MIT © Grigorii Duca