我误解了strlen()吗?

Cød*_*lay 0 php strlen

我正在尝试strlen()在PHP中正确理解,以创建一个缩短文本并完成文本的应用程序...

我的代码:

  $prize_text = "Learn how to eat pizza TODAY";
          if (strlen($prize_text) > 24) {
        $prize_text = substr($prize_text, 0, 21) . '...';
        }
Run Code Online (Sandbox Code Playgroud)

#1 Visual Aid

$prize_text = "Watch Good Day Sunshine Today!";
Run Code Online (Sandbox Code Playgroud)

#2视觉援助

$prize_text = "abcdefghijklmnopqrstuvwxyz";
Run Code Online (Sandbox Code Playgroud)

#3视觉援助

为什么一切都不匹配?我想要一个缩短文本的统一标准,然后添加三个点.我的代码出了什么问题?

小智 7

错误的工具.你想要CSS来避免你遇到的破坏问题.

#element {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
Run Code Online (Sandbox Code Playgroud)

好处

  • 您可以随意隐藏/显示文本,而使用PHP,已发送的文本已在文档中呈现.
  • 将适用于多种情况,而PHP是硬编码的.