PHP code example of coercive / render

1. Go to this page and download the library: Download coercive/render library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

coercive / render example snippets


use Coercive\Utility\Render\Render;

# Load
$render = new Render( 'TEMPLATES_ROOT_PATH' );

# Set globals vars (global for all views and sub injected views)
# use $render->setGlobalDatas for override or add for conserve previous added
$render->addGlobalDatas([
	'app' => new App(),
	'header' => new Header(),
	'handler' => new Handler()
	...
]);

# Set Views Datas
# use $render->setDatas for override or add for conserve previous added
$render->addDatas([
	'title' => 'My Custom Title',
	'content' => 'Lorem Ipsum Text',
	'link' => 'Visit my website : <a href="#">my-web-site.com</a>'
	...
]);

# Set View path
# use $render->setPath for override or add for conserve previous added
$render->setPath('/TemplateName/ViewDir/Viewname');

# Multi views
foreach([...] as $path) {
    $render->addPath($path);
}

# If multiple template, you need to set where load a layout
# Or if you need to load in specific other template for a/b testing or events ...
$render->setTemplate('MyEventTemplate2017');

# Now, Render !
echo $render->render();

use Coercive\Utility\Render\Render;

# Load
$render = new Render( 'TEMPLATES_ROOT_PATH' );

# You can see all errors like this
foreach($render->getExceptions() as $exception) {
    echo $exception->getMessage();
}

# Or you can log error when it's added with handler
$render->debug(function ($exception) {
    error_log(print_r($exception->getMessage(), true));
});

Dir: Website
- Dir: Templates
-- Dir: Template
-- Dir: view
--- File: view-1.php
--- File: view-2.php
--- File: view-3.php
-- Dir: layout
--- File: layout.php
--- File: head.php
--- File: header.php
--- File: footer.php

<html>
	<head>
		 

echo $this->getViews();

Dir: Website
	Dir: views
		Dir: Default
			Dir: layout
				File: layout.php
				File: head.php
				File: header.php
				File: footer.php
		Dir: Email
			Dir: layout
				File: layout.php
		Dir: None
			Dir: layout
				File: layout.php