romeoz / rock-template
PHP 通用模板引擎,具有 MODx 类似语法
0.14.1
2015-10-23 15:59 UTC
Requires
- php: >=5.4.0
- romeoz/rock-components: 0.11.*
- romeoz/rock-execute: 0.10.*
- romeoz/rock-url: 0.11.*
Requires (Dev)
- phpunit/phpunit: ^4.7.0
- romeoz/rock-access: 0.10.*
- romeoz/rock-cache: 0.14.*
- romeoz/rock-date: 0.11.*
- romeoz/rock-filters: 0.10.*
- romeoz/rock-image: 0.10.*
- romeoz/rock-session: 0.11.*
Suggests
- romeoz/rock-cache: required for caching layouts, chunks, placeholders and others variables
- romeoz/rock-csrf: required for generating CSRF-token (security)
- romeoz/rock-date: required for building a datetime (DateTimeSnippet and filter date)
- romeoz/rock-filters: required for using filters for snippets
- romeoz/rock-image: required for editing a image (cropping, watermarks and etc)
- romeoz/rock-sanitize: required for sanitization rules a model
- romeoz/rock-validate: required for validation rules a model
- romeoz/rock-widgets: required for using a widgets
README
特性
- 支持原生 PHP 引擎和声明式 MODx 类似语法(占位符,块,片段等)
- 支持多引擎
- 多作用域($root 和 $parent)
- 丰富的过滤器(算术/位操作,条件,字符串,日期和 URL)
- 自定义自动转义
- 支持添加/自定义过滤器和解剖片段
- 可以添加自定义扩展
- 小部件
- 缓存所有实体模板引擎
- 为 Rock 框架 的独立模块/组件
安装
通过命令行
composer require romeoz/rock-template
在你的 composer.json 中
{ "require": { "romeoz/rock-template": "*" } }
快速入门
###PHP 引擎
use rock\template\Template; $template = new Template; echo $template->render('/path/to/layout.php', ['foo' => 'world!!!']);
内容布局.php
<?php /** @var \rock\template\Template $this */ ?> Hello <b><?=$this->foo?></b>
###Rock 引擎
use rock\template\Template; echo (new Template)->render('/path/to/layout', ['foo' => 'world!!!']);
内容布局.html
Hello <b>[[+foo]]</b>
文档
演示
- 安装 Docker 或 askubuntu
docker run --name demo -d -p 8080:80 romeoz/docker-rock-template
- 打开演示 https://:8080/
需求
- PHP 5.4+
- 对于缓存布局、块、占位符和其他变量需要 Rock Cache:
composer require romeoz/rock-cache
- 对于使用小部件需要 Rock Widgets:
composer require romeoz/rock-widgets
- 对于验证规则需要一个模型 Rock Validate:
composer require romeoz/rock-validate
- 对于清理规则需要一个模型 Rock Sanitize:
composer require romeoz/rock-sanitize
- 对于在片段中使用过滤器需要 Rock Filters:
composer require romeoz/rock-filters
- 对于编辑图像(裁剪、水印等)需要 Rock Image:
composer require romeoz/rock-image
- 对于生成 CSRF-token(安全)需要 Rock CSRF:
composer require romeoz/rock-csrf
- 对于生成日期时间(DateTimeSnippet 和日期过滤器)需要 Rock DateTime:
composer require romeoz/rock-date
所有非粗体依赖项是可选的
许可证
Rock 模板引擎是开源软件,许可协议为 MIT 协议。