我有文字,例如:
$str = 'Hi there bla bla';
我在$ str
中使用了substr函数substr($str, 0 , 20);
我有全文,但如果我有更长的文字,请说:
$str = "Hi there bla bla Hi there bla bla Hi there bla bla";
$substred = substr($str, 20, 21);
我以为我可以使用
if ($substred) { echo "..."; };
但它不起作用..?
答案 0 :(得分:4)
...
添加到字符串代码:
if (strlen($string) > 20) {
$string = substr($string, 0, 20) . "..."; }
答案 1 :(得分:0)
你需要用这样的点
来回显完整的陈述$str = "Hi there bla bla Hi there bla bla Hi there bla bla";
$sentence = substr($str, 0, 21);
echo $sentence."....";
答案 2 :(得分:0)
这是你要找的吗?您应该先计算它,然后回显结果。 http://codepad.org/OFo6MG6P
<?php
$str = 'Hi there bla bla';
echo 'Original: "'.$str.'", long one: "';
substr($str, 0 , 20);
$str = "Hi there bla bla Hi there bla bla Hi there bla bla";
$substred = substr($str, 20, 21);
if (strlen($str) > 20) { echo $substred."...\""; };
?>
答案 3 :(得分:0)
我假设您想要回显一个文本,但只有它的一部分,如果它太长并添加“...”。这可能有用......
if (strlen("$txt")> 20){
echo substr($txt,0,20)."...";
}
答案 4 :(得分:0)
这不会直接回答问题,但如果要通过HTML显示字符串,则可能很有用。可以使用带有省略号值的样式属性text-overflow在CSS中完成。
$ STR
答案 5 :(得分:0)
如果您希望使用三元逻辑以内联形式
您可以按照以下步骤进行操作:
$string = "Hey, Hello World"
strlen($string) < 10 ? $string : substr($string, 0, 10) . '...';
输出:嗨,你好...