$string = '540';
if (strlen ($string >= 34)){
print_r((substr($string, 0, 30) . "..."));
} else {
print_r(($string));
}
如果$string
长于34个字符,则应附加“...”,否则只应打印字符串。
我认为正在发生的事情是解释器在进行比较时假设字符串是一个数字。
如果我将$string
更改为
$string = '540 rocks !'
为什么会这样?
答案 0 :(得分:2)
如果您要进行的测试是在字符串长度上,只需更改此行:
if ($string >= 34)){
进入这个:
if (strlen($string) >= 34)){
答案 1 :(得分:2)
应该是:
if (strlen($string) >= 34)) {
不
if ($string >= 34)){