1. Go to this page and download the library: Download nicmart/string-template library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
nicmart / string-template example snippets
$engine = new StringTemplate\Engine;
//Scalar value: returns "This is my value: nic"
$engine->render("This is my value: {}", 'nic');
//Array value: returns "My name is Nicolò Martini"
$engine->render("My name is {name} {surname}", ['name' => 'Nicolò', 'surname' => 'Martini']);
//Nested array value: returns "My name is Nicolò and her name is Gabriella"
$engine->render(
"My name is {me.name} and her name is {her.name}",
[
'me' => ['name' => 'Nicolò'],
'her' => ['name' => 'Gabriella']
]);
class Foo { function __toString() { return 'foo'; }
//Returns "foo: bar"
$engine->render(
"{val}: bar",
['val' => new Foo]);
$engine = new StringTemplate\Engine(':', '');
//Returns I am Nicolò Martini
$engine->render(
"I am :name :surname",
[
'name' => 'Nicolò',
'surname' => 'Martini'
]);
$engine = new StringTemplate\SprintfEngine;
//Returns I have 1.2 (1.230000E+0) apples.
$engine->render(
"I have {num%.1f} ({num%.6E}) {fruit}.",
[
'num' => 1.23,
'fruit' => 'apples'
]
)
use StringTemplate\NestedKeyIterator;
use StringTemplate\RecursiveArrayOnlyIterator;
$ary = [
'1' => 'foo',
'2' => [
'1' => 'bar',
'2' => ['1' => 'fog']
],
'3' => [1, 2, 3]
];
$iterator = new NestedKeyIterator(new RecursiveArrayIterator($ary));
foreach ($iterator as $key => $value)
echo "$key: $value\n";
// Prints
// 1: foo
// 2.1: bar
// 2.2.1: fog
// 3.0: 1
// 3.1: 2
// 3.2: 3