deblan.io-murph/src/Twig/Extension/TypoExtension.php
Simon Vieille 49de74ec24
Some checks failed
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/deployment/woodpecker Pipeline failed
add posts as card on homepage
2023-01-05 19:53:34 +01:00

29 lines
579 B
PHP

<?php
namespace App\Twig\Extension;
use Twig\Extension\AbstractExtension;
use Twig\TwigFilter;
use Twig\TwigFunction;
class TypoExtension extends AbstractExtension
{
public function getFilters(): array
{
return [
new TwigFilter('nbsp', [$this, 'nbsp']),
];
}
public function nbsp(string $value)
{
return preg_replace_callback(
'/(.+)(\.+|,+|;+|:+|!+|\?+)/isU',
function($d) {
return sprintf('%s&nbsp;%s', trim($d[1]), $d[2]);
},
$value
);
}
}