icanboogie/bind-render
Binds icanboogie/render to ICanBoogie
Requires
- php: >=5.6
- icanboogie/icanboogie: ^4.0
- icanboogie/render: ^0.6
README
The icanboogie/bind-render package binds icanboogie/render to ICanBoogie, using its autoconfig feature. It adds various getters and methods to the Application instance and a template resolver that uses the application paths to look for templates.
<?php /* @var ICanBoogie\Application $app */ echo get_class($app->template_engines); // ICanBoogie\Render\EngineCollection echo get_class($app->template_resolver); // ICanBoogie\Binding\Render\ApplicationTemplateResolver echo get_class($app->renderer); // ICanBoogie\Render\Renderer $app->render($app->models['articles']->one);
The shared BasicTemplateResolver instance is replaced by an ApplicationTemplateResolver
instance during the TemplateResolver::alter
event of class TemplateResolver\AlterEvent.
Enhanced template resolver
ApplicationTemplateResolver extends the template resolver used by icanboogie/render and icanboogie/view to search templates in the application paths (see Multi-site support). Also, the "//" prefix can be used to search for templates from these paths .e.g. "//my/special/templates/_form".
Defining engines using render
config fragments
The preferred method to define render engines is using render
config fragments, because they
can be synthesised and cached.
The following example demonstrates how to define and engine for the .phtml
templates:
<?php // config/render.php namespace ICanBoogie\Binding\Render; use ICanBoogie\Render\PHPEngine; return [ RenderConfig::ENGINES => [ '.phtml' => PHPEngine::class ] ];
Requirements
The package requires PHP 5.6 or later.
Installation
The recommended way to install this package is through Composer:
$ composer require icanboogie/bind-render
Cloning the repository
The package is available on GitHub, its repository can be cloned with the following command line:
$ git clone https://github.com/ICanBoogie/bind-render.git
Documentation
The package is documented as part of the ICanBoogie framework
documentation. You can generate the documentation for the package and its dependencies with
the make doc
command. The documentation is generated in the build/docs
directory.
ApiGen is required. The directory can later be cleaned with
the make clean
command.
Testing
The test suite is ran with the make test
command. PHPUnit and Composer need to be globally available to run the suite. The command installs dependencies as required. The make test-coverage
command runs test suite and also creates an HTML coverage report in "build/coverage". The directory can later be cleaned with the make clean
command.
The package is continuously tested by Travis CI.
License
icanboogie/bind-render is licensed under the New BSD License - See the LICENSE file for details.