由于这个词在结尾被打断,这个问题很可能出现。您可以使用以下代码段,它将在word边界处结束
function short_title($after = \'\', $length)
{
$mytitle = get_the_title();
if (strlen($mytitle) > $length) {
$mytitle = substr($mytitle, 0, $length);
$i = strrpos($mytitle, " ");
$mytitle = substr($mytitle, 0, $i);
echo $mytitle . $after;
} else {
echo $mytitle;
}
}
short_title( \'...\', 40 );
参考号:
http://code.web-max.ca/truncate_string.php但是,如果您有/使用多字节支持,那么最好使用mb\\u strlen();mb\\u substr(),mb\\u strpos(),而不是strlen(),substr(),mb\\u strpos()函数。