これが私のコードです。データベースからテキストを取得し、テーブルに表示し、データが450文字を超えているとしましょう。これを最後に置きます
....[もっと見る]
これでコードは問題なく動作しますが、例外が 1 つあります。データベース内の情報には、段落や箇条書きリストなどの html が含まれています。それは問題を引き起こします。制限を設定するという全体的な考え方は、行が必要以上に引き伸ばされないようにすることです.箇条書きリストまたは段落の改行は0または1文字としてカウントされるようですが、それには時間がかかります多くの文字のスペースを増やして、改行が考慮されるようにこのコードを操作するにはどうすればよいですか。
私のアイデアは、次のようなもので間の空白を数えることです:
$white_space = substr_count($text, ' ');
合計空白を返す
私もこれを試しました
$white_space_str = substr_count($newstr, ' ');
しかし、それは0を返すので、何か間違ったことをしています。しかし、いずれにせよ、私はこの時点で少し立ち往生しており、誰かが初心者を助けることができることを願っています.
しかし、それを実際のコードに組み込む方法がわかりません。
function trim_description($str, $maxlen) {
if ( strlen($str) <= $maxlen ) return $str;
$newstr = substr($str, 0, $maxlen);
if ( substr($newstr,-1,1) != ' ' ) $newstr = substr($newstr, 0, strrpos($newstr, " "));
return $newstr;
}