我試圖找到由20個字組成的PHP字符串中的最後一個字符,只有最後一個字符是以下之一:確定PHP字符串中的最後一個字符,用新字符替換並返回字符串
,。 :;或空格「」
但是如果最後一個字符是:
。 ! ?
我只想將這些字符附加到原始字符串。
我有多遠:
<?php
function limit_words($description, $count) {
$words = explode(" ", $description);
$chunk = array_chunk($words, $count);
$description = implode(" ", $chunk[0]);
$last_char = $description[strlen($description)-1];
$replace = "...";
if ($last_char != "." || "!" || "?") {
$trim = rtrim($description, $last_char);
return $trim . $replace;
}
else
{
return $description;
}
};
$descrip = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum convallis ipsum ac diam elementum, ac tempus turpis porttitor. Donec eleifend. lobortis gravida. Duis vulputate, ante ac interdum ultricies, elit nunc mollis ante, id consequat nulla mauris vitae nunc. Curabitur leo mauris, tristique in euismod eu, luctus nec libero. Integer sapien erat, egestas ut lectus eu, sagittis scelerisque neque.";
$count = 20;
echo limit_words($descrip, $count);
?>
我的代碼成功導致20字串,並追加「......」到了最後,但你會發現在$記述的最後一個字符是一個。 (全站式),所以它應該回聲「Lorem ipsum dolor sit amet,consectetur adipiscing elit。Vestibulum convallis ipsum ac diam elementum,ac tempus turpis porttitor。Donec eleifend。」
我希望得到這個工作的任何幫助,希望它只是一些愚蠢的!
非常感謝您!你可能會說,我正處於學習PHP的早期階段。 –
@SamHolguin:沒問題,除了** ** if語句外,代碼中的所有內容都看起來很好。祝你好運:-) – Fallen
歡呼,欣賞它:) –