Skip to content

bobthecow/mustache.php

Folders and files

NameName
Last commit message
Last commit date
May 10, 2024
May 10, 2024
Aug 13, 2024
Aug 13, 2024
Aug 13, 2024
Nov 27, 2020
Nov 15, 2014
Aug 9, 2022
Jul 18, 2015
Jul 18, 2015
Nov 23, 2019
Dec 13, 2021
Aug 15, 2015
Jul 4, 2024
Jul 31, 2016
May 1, 2012

Repository files navigation

Mustache.php

A Mustache implementation in PHP.

Package version Monthly downloads

Installation

composer require mustache/mustache

Usage

A quick example:

<?php
$m = new Mustache_Engine(array('entity_flags' => ENT_QUOTES));
echo $m->render('Hello {{planet}}', array('planet' => 'World!')); // "Hello World!"

And a more in-depth example -- this is the canonical Mustache template:

Hello {{name}}
You have just won {{value}} dollars!
{{#in_ca}}
Well, {{taxed_value}} dollars, after taxes.
{{/in_ca}}

Create a view "context" object -- which could also be an associative array, but those don't do functions quite as well:

<?php
class Chris {
    public $name  = "Chris";
    public $value = 10000;

    public function taxed_value() {
        return $this->value - ($this->value * 0.4);
    }

    public $in_ca = true;
}

And render it:

<?php
$m = new Mustache_Engine(array('entity_flags' => ENT_QUOTES));
$chris = new Chris;
echo $m->render($template, $chris);

Note: we recommend using ENT_QUOTES as a default of entity_flags to decrease the chance of Cross-site scripting vulnerability.

And That's Not All!

Read the Mustache.php documentation for more information.

See Also