function twig_reverse_filter in Zircon Profile 8.0
Same name and namespace in other branches
- 8 vendor/twig/twig/lib/Twig/Extension/Core.php \twig_reverse_filter()
Reverses a variable.
Parameters
Twig_Environment $env A Twig_Environment instance:
array|Traversable|string $item An array, a Traversable instance, or a string:
bool $preserveKeys Whether to preserve key or not:
Return value
mixed The reversed input
1 call to twig_reverse_filter()
- Twig_Tests_Extension_CoreTest::testReverseFilterOnNonUTF8String in vendor/
twig/ twig/ test/ Twig/ Tests/ Extension/ CoreTest.php
1 string reference to 'twig_reverse_filter'
- Twig_Extension_Core::getFilters in vendor/
twig/ twig/ lib/ Twig/ Extension/ Core.php
File
- vendor/
twig/ twig/ lib/ Twig/ Extension/ Core.php, line 906
Code
function twig_reverse_filter(Twig_Environment $env, $item, $preserveKeys = false) {
if ($item instanceof Traversable) {
return array_reverse(iterator_to_array($item), $preserveKeys);
}
if (is_array($item)) {
return array_reverse($item, $preserveKeys);
}
if (null !== ($charset = $env
->getCharset())) {
$string = (string) $item;
if ('UTF-8' != $charset) {
$item = twig_convert_encoding($string, 'UTF-8', $charset);
}
preg_match_all('/./us', $item, $matches);
$string = implode('', array_reverse($matches[0]));
if ('UTF-8' != $charset) {
$string = twig_convert_encoding($string, $charset, 'UTF-8');
}
return $string;
}
return strrev((string) $item);
}