Classes List

frdl\Templater\AdvancedReplacer

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
 24 
 25 
 26 
 27 
 28 
 29 
 30 
 31 
 32 
 33 
 34 
 35 
 36 
 37 
 38 
 39 
 40 
 41 
 42 
 43 
 44 
 45 
 46 
 47 
 48 
 49 
 50 
 51 
<?php

namespace frdl\Templater;

use frdl\Context as Context;

class AdvancedReplacer extends Replacer
{

protected $filters;
protected $templating;

public function __construct(){
   $this->filters = [
      'uppercase' => 'strtoupper',
      'lowercase' => 'strtolower',
      'ucfirst' => 'ucfirst',
      'json' => 'json_encode',
      'json_encode' => 'json_encode',
   
   ];

$this->templating = new Templating();
}

public function getTemplating(){
return $this->templating;
}

public function getFilters(){
return $this->filters;
}

public function setFilter($name$filter){
$this->filters[$name]=$filter;
return $this;
}
public function setFilters(array $filters){
$this->filters = $filters;
return $this;
}

    public function replace(Context $contextstring $template) : string {
$self = new self;
return $context(function($ArrayObjectuse($self$template){
     return $self->getTemplating()->render$template$ArrayObject->all(), $self->getFilters() );
});

}

}