非常に非標準的な方法で文字列をトリミングしようとしています。テキストは、目に見えるティーザーと、リンクをクリックした後に JS によって表示される非表示の残りの部分の 2 つの部分に分かれています。私はそのような何かが必要です: 私のテキスト:
Teaser: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas enim est, convallis non ullamcorper hendrerit, vehicula ac quam. malesuada suscipit eleifend で。 残り: Donec posuere ipsum at ipsum feugiat eu ornare nunc ultricies. Donec eleifend odio a eros semper cursus. Donec posuere ipsum at ipsum feugiat eu ornare nunc ultricies. Donec eleifend odio a eros semper cursus.
私の問題は、すべてのテキストがデータベースの単一フィールドに格納されているためです。2 つのドットまたは 100 文字の後にティーザーをトリミングしてから、テキストの残りの部分を表示する必要があります (文字を失うことなく)。「残り」の部分は、上の例のように新しい文と大きな文字で始める必要があります。
テキストに substr を使用すると、残りはランダムな文字で始まります...
$text = '';
$text = strip_tags($row['text']);
$text = explode('.', $text);
$teaser = $text[0].$text[1].'.';
$cut = strlen($teaser);
if($cut > 100)
{
$teaser = trimString($text, 0, 100);
$cut = 100;
}
$theRest = substr($row['text'], $cut);
これで、「。」で終わるティーザーがあります。または「...」(私の関数trimStringはそのように機能します)そしてこれは良いことです。しかし、このシナリオの残りはランダムな文字で始まり、これは私が望むものではありません. 誰かが文の途中でドットを使用すると、別の問題が発生するのではないかと心配しています。何か案は?