确定它是否在 PHP 中的字符串结尾

Determine if it's end of a string in PHP

有没有办法确定它是否已到达字符串的末尾。 现在我正在使用这个 PHP 函数

<?php echo substr('some text', 0, 7)?>

限制显示的字数。现在我想在文本中添加“...”,但前提是它不是字符串的末尾。

所以当我有文本 "Hello!" 时,它会显示整个内容,如果我有文本 "Determine",它不仅会显示 "Determi",还会添加这个“.. ”这样 "Determi..."。

我试过这些椭圆和溢出的方法,但它们对我不起作用。

上面描述的这样的事情可能吗?

你可以这样做:

<?php echo (strlen($text) > 7 ? (substr($text, 0, 7) . '...') : $text) ?>

如果字符串超过 7 个字符,则只回显前 7 个字符并添加 ...,否则只回显文本

您可以使用内置函数实现此目的 mb_strimwidth:

<?php
echo mb_strimwidth("some text", 0, 7, "...")
// output: "some te..."
?>
function trimStr($str, $len = 7) {
  return strlen($str) > $len ? substr($str, 0, $len) . '...' : $str;
}