<?php
function strShorten($str, $maxlen = 10, $insert = '/.../') {
if ($str && !is_array($str)) { if ($maxlen && is_numeric($maxlen) && $maxlen < strlen($str)) { if ($insert && ($ilen = strlen($insert))) { if ($ilen >= $maxlen) { $insert = '**'; $ilen = 2;
}
}
$chars = $maxlen - $ilen; $start = ceil($chars/2); $end = floor($chars/2); return substr_replace($str, $insert, $start, -$end); } else { return $str; }
}
}
echo strShorten('123456789', 6, ''); echo strShorten('123456789', 6, '-'); echo strShorten('123456789', 6, 'longstring'); echo strShorten('abcdefghijklmnopqrstuvwxyz', 10, '..'); echo strShorten('abcdefghijklmnopqrstuvwxyz'); ?>