ホームページ > バックエンド開発 > PHPチュートリアル > タグを変形させずに HTML テキストを切り詰める方法

タグを変形させずに HTML テキストを切り詰める方法

Barbara Streisand
リリース: 2024-11-11 16:40:02
オリジナル
621 人が閲覧しました

How to Truncate HTML Text Without Distorting Tags?

タグを歪めずに HTML テキストを切り詰める

タグの有効性を維持しながら HTML を含むテキストを切り詰める必要性は、Web 開発における一般的な要件です。 。ただし、文字列の切り捨てを直接適用すると、閉じられていないタグの存在により、テキストのセクションが歪んだり不完全になったりすることがよくあります。

正確な切り捨てのための HTML の解析

効果的な 1 つは、解決策は、HTML を解析し、タグの開始と終了を注意深く処理することです。これにより、最終的に切り詰められたテキストの構造的完全性が確実に維持されます。段階的なアプローチは次のとおりです:

  1. オープン タグの追跡: HTML の解析中に検出されたオープン タグのスタックを維持します。
  2. 印刷テキスト フラグメント: HTML を反復処理し、タグの前にあるテキスト フラグメントを出力します。
  3. HTML エンティティとマルチバイト シーケンスの処理: エンティティ (例: <、&) および UTF -8 でエンコードされたシーケンスは処理され、完全な文字表現を保持するために変更されずに渡されます。
  4. 開始タグの処理: 開始タグが見つかると、タグ スタックにプッシュされます。自己終了タグは直接出力されます。
  5. 終了タグの処理: 終了タグが見つかると、そのタグはタグ スタックからポップされ、対応する開始タグが適切にネストされているかどうかチェックされます。終了タグが出力されます。
  6. 残りのタグを閉じる: HTML 全体を解析した後、スタックに残っている開いているタグは逆の順序で閉じられます。

HTML 対応の切り捨ての PHP 実装

次の PHP 関数は、タグを保持しながら HTML テキストを切り詰める方法を示します。

function printTruncated($maxLength, $html, $isUtf8 = true) {
    // ... Function logic goes here
}
ログイン後にコピー

使用例

printTruncated(10, '&lt;Hello&gt;  world!'); // Output: "  world!"

結論

HTML を解析しタグを適切に処理することで、構造的な完全性を維持しながらテキストを切り詰めることができます。これにより、リンク、書式設定、その他の HTML 要素が確実に保持され、より正確で有意義なユーザー エクスペリエンスが提供されます。

以上がタグを変形させずに HTML テキストを切り詰める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート