<?php
if (class_exists('\Textpattern\Tag\Registry')) {
Txp::get('\Textpattern\Tag\Registry')->register('sab_substr');
}
function sab_substr($atts, $thing)
{
extract(lAtts(array(
'limit' => 10,
'trail' => '…'
), $atts));
assert_int($limit);
$thing = parse($thing);
if (strlen(utf8_decode($thing)) > $limit)
{
$thing = preg_replace('/^(.{'.$limit.'}).*$/us', '$1', $thing);
return htmlspecialchars($thing).$trail;
}
else
{
return htmlspecialchars($thing);
}
}
?>