ds/view

This package is abandoned and no longer maintained. No replacement package was suggested.

View Presenter for Rendering Templates.

v1.0.0 2017-11-27 13:21 UTC

This package is not auto-updated.

Last update: 2018-01-29 11:24:34 UTC


README

SensioLabsInsight Build Status Test Coverage

View

Viewer for rendering templates.

#Useage.

$twigLoader = new \Twig_Loader_Filesystem('/Path/to/Templates');
$twigEnvironment = new \Twig_Environment(
    $twigLoader,
    ['cache' => '/Path/to/CacheDir']
);

$twigEnvironment->addExtension(new \Twig_Extension_Optimizer());
$twigLoader->addPath('/Bookings/View/Themes/Default','Default');


$smarty = new \Cyberhut\View\TemplateEngine\SmartyEngine(
    '/Path/to/Templates',
    '/smarty/compile',
    '/Path/to/CacheDir',
    /smarty/config'
);

Create Viewer with CacheInterface

$view = new \Rs\View\Viewer(
    new \Rs\View\TemplateEngine\TwigEngine($twigLoader,$twigEnvironment),
    new \Rs\Cache\Cache()
);

Call from controller

echo (string)$view->render('home/index.twig',[], ['cached' => 'true']);

Make changes to the original Twig Classes (TwigLoader/TwigEnvironment)

$templateEngine = $view->getTemplateEngine();
$twigEnvironment = $templateEngine->getEnvironment();
$twigLoader = $templateEngine->getLoader();

Change Engines

$view->withTemplateEngine($smarty)
echo $view->render('index.tpl',['data' => 'foo']);

Cache render response (memcached)

$cache = new \Rs\Cache\Cache(
    new \Rs\Cache\MemcacheStorage(
        new \Memcached()
    )
);

$cachedView = $view->withCache($cache);
echo $cachedView->render('home/index.twig',[], ['cached' => 'true', 'expire' => 3600);
echo $cachedView->render('home/index.twig',[], ['cached' => 'true', 'expire' => 3600); //from memcache