jinnguyen/puja
Composer 安装命令:
composer require jinnguyen/puja
包简介
Puja is a lightweight, flexible and easy PHP template engine. Inspired in django, Puja also support validate template syntax!
关键字:
README 文档
README
Puja is a lightweight, flexible and easy PHP template engine. Inspired in django, Puja also support validate template syntax!
Install:
- Composer
composer require jinnguyen/puja require 'vendor/autoload.php'; $puja = new Puja();
- Old style
require '/path/to/Autoload.php'; $puja = new Puja();
Some of Puja's features:
- VALIDATE TEMPLATE SYNTAX
- it is extremely fast
- no template parsing overhead, only compiles once.
- it is smart about recompiling only the template files that have changed.
- unlimited nesting of sections, conditionals, etc.
- built-in caching of template output.
Validate syntax:
Puja support validate syntax before the parser run compiler. This will helpfull for you to write template syntax.
Download
GIT: git clone https://github.com/jinnguyen/puja.git
SVN: svn checkout https://github.com/jinnguyen/puja.git
Source code: https://github.com/jinnguyen/puja/zipball/master
Bug list: https://github.com/jinnguyen/puja/issues?page=1&state=open
Example: file template: index.tpl:
{% extends master.tpl %}
{% block body %}
Hello, {{ a }
Welcome you go to Puja template examples
{% endblock %}
The result will be:
Puja only show debug when mode debug is enabled
** We recommend you should only enable mode debug when your app is in develop. And disable it when your app go to production. It will save a lot time to template engine parser.
Basic API Usage:
- template file: index.tpl
Hello {{ username }},
Welcome you go to the very first exmplate of Puja template.
- php file: index.php
<?php require_once '/path/to/Autoload.php'; $tpl = new Puja; $tpl->tpl_dir = '/path/to/template/folder/'; $data = array( 'username'=>'Jin Nguyen', ); $tpl->parse($template_file = 'index.tpl', $data); ?>
The result will show:
Hello Jin Nguyen, Welcome you go to the very first exmplate of Puja template.
See User's guide for full information.
Template Inheritance:
- master.tpl:
==== Start Master ===
{% block body %}Master Body{% endblock body %}
{% block javascript %}Master javascript{% endblock javascript %}
==== End Master ====
- index.tpl
{% block javascript %}Index javascript{% endblock javascript %}
{% block body %}Index Body{% endblock body %}
And the result will be:
==== Start Master === Index Body Index javascript ==== End Master ====
统计信息
- 总下载量: 954
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 5
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: The
- 更新时间: 2016-10-23