PHP code example of averay / tokenised-strings

1. Go to this page and download the library: Download averay/tokenised-strings 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/ */

    

averay / tokenised-strings example snippets



$formatter = new \Averay\TokenisedStrings\TokenizedStringBuilder();

// Simple strings
echo $formatter->build('Today is {{ day }}.', ['day' => date('l')]);

// URLs (values will be URL encoded)
echo $formatter->buildUrl(
  'https://www.example.com/?page={{ page_id }}&ref=home',
  ['page_id' => 'example page'],
);

// HTML (values will be HTML encoded)
echo $formatter->buildUrl(
  '<p>Your order is <strong>{{ status }}</strong></p>.',
  ['status' => 'preparing'],
);


$formatter = new \Averay\TokenisedStrings\TokenizedStringBuilder();

$addEmoji = fn(string $string) => '⭐️' . $string . '⭐️';

echo $formatter->build('Today is {{ day }}.', ['day' => date('l')], $addEmoji);


$formatter = new \Averay\TokenisedStrings\TokenizedStringBuilder();
$formatter->addParam('day', date('l'))->addParam('colour', 'purple');

echo $formatter->build('Today is {{ day }} and the colour is {{ colour }}.');
echo $formatter->build('Today’s colour is {{ colour }}.');


$formatter = new \Averay\TokenisedStrings\TokenizedStringBuilder();
$formatter->addModifier('upper', \strtoupper(...));

echo $formatter->build('Today is {{ day | upper }}.', ['day' => date('l')]);


$template = 'The code is [% code %].';
$tokens = ['code' => 'ABC123'];

// Configure parser with custom syntax
$parser = new \Averay\TokenisedStrings\Parsing\Parser();
$parser->setTokens([
  ParserTokenEnum::TagOpen->value => '[%',
  ParserTokenEnum::TagClose->value => '%]',
  ParserTokenEnum::TagModifier->value => '>>',
  ParserTokenEnum::TagPropertyAccessor->value => '->',
]);

// Render template
$renderer = new \Averay\TokenisedStrings\Rendering\Renderer();
echo $renderer->render($parser->parse($template), $tokens);


function renderString(string $template, array $values): string
{
  static $formatter;
  if ($formatter === null) {
    $formatter = new \Averay\TokenisedStrings\TokenizedStringBuilder();
    // Configure standard parameters, modifiers, etc...
  }

  return $formatter->build($template, $values);
}

// ...

echo renderString('Today is {{ day }}.', ['day' => date('l')]);