bonfim / tpl
PHP 模板管理器
v2.2.2
2018-09-09 20:00 UTC
Requires
- php: >=7.1.0
Requires (Dev)
- phpunit/phpunit: >=5.4.3
- squizlabs/php_codesniffer: ^2.3
README
目录
先决条件
- PHP 7.1+
安装
$ composer require EdsonOnildoJR/PHP-Template-Engine
基本用法
创建一个 index.php 文件并引入 composer 的 autoload.php
<?php include 'vendor/autoload.php';
之后,进行所有必要的配置
use Sketch\Tpl; Tpl::config([ //'environment' => 'production', 'environment' => 'development', 'template_dir' => 'path/to/templates', 'cache_dir' => 'path/to/caches' ]);
分配和渲染模板
Tpl::assing('title', 'Hello!'); Tpl::render('test');
草图标签
变量
变量是模板的动态内容,在脚本执行时通过 Tpl::assing() 静态方法进行赋值。变量名区分大小写。
模板
Welcome to {title}
数据
<?php Tpl::assign('title', 'Sketch');
输出
Welcome to Sketch
变量上的修饰符
您可以在变量上添加执行修饰符。
模板
Hello {name|capitalize}!
数据
<?php Tpl::assign('name', 'edson onildo');
输出
Hello Edson Onildo!
条件表达式
检查一个表达式,如果条件为真则打印 {if}{else} 之间的代码,如果条件为假则打印 {else}{/if} 之间的代码。尝试使用嵌套块 :)
模板
{if age >= 18}
Adult
{else}
Minor
{/if}
数据
<?php Tpl::assign('age', 19);
输出
Adult
您还可以使用 {if condition}内容{elseif condition}内容{else}内容{/if} 或任何 if 和 else 的组合。
循环
允许遍历数组或对象的值。
模板
<ul> {loop authors as author} <li> {author.name}: {author.page} </li> {/loop} </ul>
数据
<?php $authors = [ [ 'name' => 'Edson Onildo', 'page' => 'https://github.com/EdsonOnildoJR' ], [ 'name' => 'Contributors', 'page' => 'https://github.com/EdsonOnildoJR/Sketch/contributors' ] ]; Tpl::assign('authors', $authors);
输出
Edson Onildo: https://github.com/EdsonOnildoJR Contributors: https://github.com/EdsonOnildoJR/Sketch/contributors
函数
使用 {func funcname()} 标签执行 PHP 函数并打印结果。您可以传递字符串、数字和变量作为参数。
模板
{func date('Y')}
输出
2018
包含
使用 {include 'template'} 标签可以包含外部模板作为块。
模板
<h1>New user:</h1> {template 'userForm'}
输出
<h1>New user:</h1> <form class="user" action="" method="post"> ... </form>
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
测试
$ composer test
贡献
有关详细信息,请参阅 CONTRIBUTING 和 CODE_OF_CONDUCT。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 inbox.edsononildo@gmail.com 联系,而不是使用问题跟踪器。
鸣谢
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件。