public function Twig_Environment::getFilter

Get a filter by name.

Subclasses may override this method and load filters differently; so no list of filters is available.

Parameters

string $name The filter name:

Return value

Twig_Filter|false A Twig_Filter instance or false if the filter does not exists

File

drupal/core/vendor/twig/twig/lib/Twig/Environment.php, line 795

Class

Twig_Environment
Stores the Twig configuration.

Code

public function getFilter($name) {
  if (null === $this->filters) {
    $this
      ->getFilters();
  }
  if (isset($this->filters[$name])) {
    return $this->filters[$name];
  }
  foreach ($this->filters as $pattern => $filter) {
    $pattern = str_replace('\\*', '(.*?)', preg_quote($pattern, '#'), $count);
    if ($count) {
      if (preg_match('#^' . $pattern . '$#', $name, $matches)) {
        array_shift($matches);
        $filter
          ->setArguments($matches);
        return $filter;
      }
    }
  }
  foreach ($this->filterCallbacks as $callback) {
    if (false !== ($filter = call_user_func($callback, $name))) {
      return $filter;
    }
  }
  return false;
}