$string = '540';
if (strlen ($string >= 34)){
print_r((substr($string, 0, 30) . "..."));
} else {
print_r(($string));
}
$string
が 34 文字を超える場合は、「...」を追加する必要があります。それ以外の場合は、文字列を出力するだけです。
何が起こっているのかというと、インタープリターが比較を行うときに文字列が数値であると想定していると思います。
に変更$string
すると、同じ問題が発生します
$string = '540 rocks !'
どうしてこれなの?