ropendev / platesattributes
[Plates Extension] Transform an array in html tag attributes.
1.0.1
2015-01-13 10:25 UTC
Requires
- php: >=5.3.0
Requires (Dev)
- league/plates: 3.*
- phpunit/phpunit: 4.*
This package is auto-updated.
Last update: 2024-12-12 22:51:37 UTC
README
This package is not maintened anymore (but still works) : Use https://github.com/PiedWeb/RenderHtmlAttribute
Plates Extension : Render html tag attributes
This package is an extension for the template engine Plates.
Two features for the same goal Manipulate html tag attributes via PHP array :
$this->attr(array $attributes)
transform an array in html tag attributes$this->mergeAttr(array $arr1, array $arr2, [array $arr3, ...])
merge multiple array without loosing values (Eg. :['class' => 'main']
+['class' => 'content']
=['class' => 'main content']
)
##Table of contents
##Usage
/* Template Init */ $templateEngine = new \League\Plates\Engine('app/views'); /* Load this extension */ $templateEngine->loadExtension(new \rOpenDev\PlatesExtension\Attributes()); $this->render('test', ['attributes' => ['class' => 'content']]);
In your app/views/test.php
template file:
<?php $defaultAttributes = ['class' => 'main']; $attributes = isset($attributes) ? $this->mergeAttr($defaultAttributes, $attributes) : $defaultAttributes; ?> <div<?=$this->attr($attributes)?>>Hello World !</div>
Will render:
<div class="main content">Hello World !</div>
Installation
composer require ropendev/platesattributes
Requirements
Stand alone extension.
See composer.json
file.
Contributing
See CONTRIBUTING.md
file.
Contributors
- Original author Robin (UX Design)
- ...
License
MIT (see the LICENSE file for details)