diff --git a/doc/book/application-integration/stand-alone.md b/doc/book/application-integration/stand-alone.md new file mode 100644 index 00000000..a5627ea3 --- /dev/null +++ b/doc/book/application-integration/stand-alone.md @@ -0,0 +1,69 @@ +# Stand-Alone + +The view and all view-helpers of zend-view can also be used stand-alone. + +## The View + +### Setup + +[Create the a renderer, set a resolver for templates](../php-renderer.md#usage) +and initialize the view, e.g. `public/index.php`: + +```php +// Create template resolver +$templateResolver = new Zend\View\Resolver\TemplatePathStack( + [ + 'script_paths' => [__DIR__ . '/../view'], + ] +); + +// Create the renderer +$phpRenderer = new Zend\View\Renderer\PhpRenderer(); +$phpRenderer->setResolver($templateResolver); + +// Initialize the view +$view = new Zend\View\View(); +$view->getEventManager()->attach( + Zend\View\ViewEvent::EVENT_RENDERER, + function () use ($phpRenderer) { + return $phpRenderer; + } +); +``` + +### Create View Script + +[Create a view script](../view-scripts.md), e.g. `view/index.phtml`: + +```php +

+``` + +### Create View Model and render Output + +Extend the script in `public/index.php`, add a view model and render the output: + +```php +// Create view model +$viewModel = new ViewModel(['headline' => 'Example']); +$viewModel->setTemplate('index.phtml'); + +// Render +echo $view->render($viewModel); //

Example

+``` + +## View Helpers + +### Setup + +Create the renderer: + +```php +$renderer = new Zend\View\Renderer\PhpRenderer(); +``` + +### Using Helper + +```php +echo $renderer->doctype(Zend\View\Helper\Doctype::HTML5); // +``` diff --git a/mkdocs.yml b/mkdocs.yml index fd188f24..3a849d0c 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -30,6 +30,8 @@ pages: - Placeholder: helpers/placeholder.md - Url: helpers/url.md - "Advanced usage of helpers": helpers/advanced-usage.md + - "Application Integration": + - "Stand-Alone": application-integration/stand-alone.md site_name: zend-view site_description: zend-view repo_url: 'https://github.com/zendframework/zend-view'