Skip to content

Alghool/twig

 
 

Repository files navigation

Donate

Twig, the flexible, fast, and secure template language for Codeigniter 4

Twig is a template language for PHP.

Twig uses a syntax similar to the Django and Jinja template languages which inspired the Twig runtime environment.

Build Status Coverage Status Downloads GitHub release (latest by date) GitHub stars GitHub license

Installation via composer

Use the package with composer install

> composer require Alghool/twig

Manual installation

Download this repo and then enable it by editing app/Config/Autoload.php and adding the Alghool\Twig namespace to the $psr4 array. For example, if you copied it into app/ThirdParty:

$psr4 = [
    'Config'      => APPPATH . 'Config',
    APP_NAMESPACE => APPPATH,
    'App'         => APPPATH,
    'Alghool\Twig' => APPPATH .'ThirdParty/twig/src',
];

Configuration

Run command:

> php spark twig:publish

This command will copy a config file to your app namespace. Then you can adjust it to your needs. By default file will be present in app/Config/Twig.php.

Usage Loading Library

$twig = new \Alghool\Twig\Twig();
$twig->display( 'file', [] );

Usage as a Service

$twig = \Config\Services::twig();
$twig->display( 'file', [] );

Usage as a Helper

In your BaseController - $helpers array, add an element with your helper filename.

protected $helpers = [ 'twig_helper' ];

And then you can use the helper

$twig = twig_instance();
$twig->display( 'file', [] );

Add Globals

$twig = new \Alghool\Twig\Twig();

$session = \Config\Services::session();
$session->set( array( 'name' => 'alghool' ) );
$twig->addGlobal( 'session', $session );
$twig->display( 'file.html', [] );

File Example

<!DOCTYPE html>
<html lang="es">  
    <head>    
        <title>Example</title>    
        <meta charset="UTF-8">
        <meta name="title" content="Example">
        <meta name="description" content="Example">   
    </head>  
    <body>
        <h1>Hi {{ name }}</h1>
        {{ dump( session.get( 'name' ) ) }}
    </body>  
</html>

How Run Tests

cd vendor\alghool\twig\
composer install
vendor\bin\phpunit

About

Twig for Codeigniter 4

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 99.7%
  • Twig 0.3%