Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/iassasin/phplate
Легковесный шаблонизатор для PHP
https://github.com/iassasin/phplate
composer php php7 template template-engine templates
Last synced: 2 months ago
JSON representation
Легковесный шаблонизатор для PHP
- Host: GitHub
- URL: https://github.com/iassasin/phplate
- Owner: iassasin
- License: other
- Created: 2016-08-25T10:41:45.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-12-14T20:27:47.000Z (about 5 years ago)
- Last Synced: 2024-04-17T09:04:15.607Z (9 months ago)
- Topics: composer, php, php7, template, template-engine, templates
- Language: PHP
- Size: 183 KB
- Stars: 3
- Watchers: 3
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: changelog.txt
- License: license.txt
Awesome Lists containing this project
README
# Phplate
[![PHP Version](https://img.shields.io/badge/php-%3E%3D%207.0-8892BF.svg)](https://php.net/)
[![Build Status](https://travis-ci.org/iassasin/phplate.svg?branch=master)](https://travis-ci.org/iassasin/phplate)
[![Coverage Status](https://coveralls.io/repos/github/iassasin/phplate/badge.svg?branch=master)](https://coveralls.io/github/iassasin/phplate?branch=master)Phplate - это легковесный и функциональный препроцессор шаблонов, написанный на php и не требующий никаких зависимостей.
# Быстрый старт
Чтобы начать использовать phplate, нужно установить его, как composer-пакет (либо вручную сделать `require_once` для всех файлов из каталога `src/`), после чего создать свой php-файл с настройками, например:
```php
require_once 'vendor/autoload.php';
use Iassasin\Phplate\Template;// Настройка пути к каталогу с шаблонами
Template::init($_SERVER['DOCUMENT_ROOT'].'/resources/templates/');
```Полный список настроек вы можете найти в [документации](docs/api.md).
Используя статический метод `Template::build`, производится подстановка аргументов шаблона в шаблон. Результатом является строка, которую можно отдать клиенту.
Аргументы передаются шаблону с помощью массива любого уровня вложенности.Конечно же, возможности phplate не ограничиваются только подстановкой переменных в указанные места, но также есть возможность условного вывода ([if](docs/constructions/if.md)), написания циклов ([for](docs/constructions/for.md)), вычисления выражений перед выводом (в частности, препроцессинг параметров с помощью [пайп-функций](docs/pipe-functions.md)), вынос повторяющегося кода в [виджеты](docs/constructions/widget.md) и другие возможности.
## Пример использования
Допустим, файлы шаблонов хранятся в каталоге `%site_root%/resources/templates/`, а phplate сконфигурирован, как в примере выше.
Шаблон, файл `%site_root%/resources/templates/order.html`:
```
Здравствуйте, {{name}}!
Ваш заказ №{{order.id}} поступил в пункт выдачи по адресу {{order.address}}.
```Использование шаблона, файл `%site_root%/index.php`:
```php
require_once 'phplate_config.php'; // созданный нами выше файл конфигаecho Template::build('order', [
'name' => 'Петя',
'order' => [
'id' => 489,
'address' => 'ул. Шаблонная, д.1, кв. 1',
],
]);
```В результате, когда произойдет переход на главную страницу сайта, пользователь увидит:
```
Здравствуйте, Петя!
Ваш заказ №489 поступил в пункт выдачи по адресу ул. Шаблонная, д.1, кв. 1.
```