petebrowne / slim-layout-view
A Custom View supporting Layouts for the Slim Framework.
Installs: 17 799
Dependents: 1
Suggesters: 0
Security: 0
Stars: 36
Watchers: 6
Forks: 4
Open Issues: 2
Requires
- php: >= 5.3.0
- slim/slim: 2.*
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2024-11-09 14:35:20 UTC
README
A Custom View supporting Layouts for the Slim Framework. slim-layout-view requires Slim 2.0+, which now follows the PSR-2 standard.
Installation
Add "petebrowne/slim-layout-view"
to your composer.json
file:
{ "require": { "slim/slim": "2.*", "petebrowne/slim-layout-view": "0.3.*" } }
And install using composer:
$ php composer.phar install
Configuration
Configure Slim to use slim-layout-view, and optionally set the layout file to use (defaults to 'layout.php'
):
$app = new \Slim\Slim(array( 'view' => '\Slim\LayoutView', 'layout' => 'layouts/main.php' ));
Usage
Now create your layout file. The content from the rendered view will be in a variable called $yield
:
<html> <head></head> <body> <?php echo $yield ?> </body> </html>
Now you can render the view in the usual way:
$app->get('/', function() use ($app) { $app->render('index.php'); });
Rendering with custom layouts or without any layout at all is also supported:
// Use a different layout for this route: $app->get('/', function() use ($app) { $app->render('index.php', array('layout' => 'custom_layout.php')); }); // Skip the layout for this route: $app->get('/index.xml', function() use ($app) { $app->render('xml.php', array('layout' => false)); });
Copyright
Copyright (c) 2013 Peter Browne. See LICENSE for details.