fenom icon indicating copy to clipboard operation
fenom copied to clipboard

Template Engine for PHP

Fenom - Template Engine for PHP

Fenóm - lightweight and fast template engine for PHP.

  • Subject: Template engine
  • Syntax: Smarty-like
  • Documentation: English, Russian
  • PHP version: 5.4+
  • State: Build Status Coverage Status
  • Version: Latest Stable Version
  • Packagist: fenom/fenom Total Downloads
  • Composer: composer require fenom/fenom
  • Discussion: Fenom Forum
  • Versioning: semver2
  • Performance: see benchmark

Quick Start

Install

If you use composer in your project then you can to install Fenom as package. However, if you are not using composer you have to configure autoloader to work with Fenom. Fenom implements the PSR-0 PHP standard to load classes which are located in the src/ directory. Templater already has own autoload-function, to register call method Fenom::registerAutoload:

Fenom::registerAutoload();

Setup

There is two way to create Fenom instance:

  • Long way: use operator new
  • Shot way: use static factory-method

Long way. Create you own template provider or default provider Fenom\Provider (that is provider read there). Using provider instance create Fenom instance:

$fenom = new Fenom(new Fenom\Provider($template_dir));

After that, set compile directory:

$fenom->setCompileDir($template_cache_dir);

This directory will be used for storing compiled templates, therefore it should be writable for Fenom. Now Fenom is ready to work and now you can to configure it:

$fenom->setOptions($options);

Short way. Creating an object via factory method with arguments from long way.

$fenom = Fenom::factory($template_dir, $template_cache_dir, $options);

Now Fenom is ready to work.

Usage

Example