結果の一部としてHTMLタグを含む/含まない、および/または単語全体などを保持しながら切り捨てるなど、HTML文字列を特定の長さに切り詰めるさまざまな方法を認識しています。–
ただし、私の問題は、文字列にまたはなどの特殊文字が含まれている場合です&
文字列を 100 文字に切り詰める必要があります (または、特殊文字の途中で切り捨てられてしまう場合は、それよりも少し短くする必要があります)。今私は機能を持っています:
$result= truncateIfNecessary(strip_tags($fullText), 100); //ignore HTML tags
function truncateIfNecessary($string, $length) {
if(strlen($string) > $length) {
return substr($string, 0, $length).'...';
} else {
return $string;
}
}
しかし、文字列がtext text – text
(ページに次のように表示され、text text - text
に$length
分類される場合、 を–
返すtext text &nda...
必要があるときに、そのように表示されるものを返しtext text...
ます。
編集:
(回答として投稿)