文字列からbrなどの HTML および PHP タグを取り除く方法

文字列からbrなどの HTML および PHP タグを取り除く方法
WordPress学習におすすめの書籍

Amazonの読み放題サービスKindle Unlimited無料体験キャンペーン実施中!

Amazon Kindle Unlimited 公式

はじめに

ウェブ開発において、ユーザー入力やデータベースから取得したデータにはHTMLタグやPHPタグが含まれていることがあります。これらのタグを取り除いて純粋なテキストを抽出することが必要な場合があります。PHPにはこの目的に使用できる便利な関数があります。それが strip_tags() です。本記事では、この関数の使い方とその利点について説明します。

strip_tags() 関数の基本

strip_tags() 関数は、指定した文字列からHTMLおよびPHPタグを取り除きます。この関数は、例えば以下のようなシナリオで役立ちます。

  • ユーザーからの入力を安全に処理する
  • テキストのサニタイズ
  • HTMLメールの本文をプレーンテキストに変換

使い方

strip_tags() 関数の基本的な使い方は非常に簡単です。以下にその例を示します。

PHP
<?php
$text = "<p>This is a <b>bold</b> paragraph with <a href='#'>a link</a>.</p>";
$clean_text = strip_tags($text);
echo $clean_text; // This is a bold paragraph with a link.
?>

この例では、$text という変数に含まれるHTMLタグがすべて取り除かれ、$clean_text にはプレーンテキストのみが残ります。

許可するタグを指定する

strip_tags() 関数には、特定のタグを許可するオプションもあります。例えば、段落タグ <p> と改行タグ <br> を許可する場合は以下のようにします。

PHP
<?php
$text = "<p>This is a <b>bold</b> paragraph with <a href='#'>a link</a>.</p>";
$clean_text = strip_tags($text, '<p><br>');
echo $clean_text; // <p>This is a bold paragraph with a link.</p>
?>

この例では、<p><br> タグは保持され、それ以外のタグは取り除かれます。

使用上の注意点

strip_tags() 関数は非常に便利ですが、いくつかの注意点があります。

  1. エンコードの問題: タグの中に不正なエンコードが含まれている場合、期待通りに動作しないことがあります。
  2. 不完全なタグ: 閉じタグがない場合やタグが不完全な場合、予期しない結果を引き起こす可能性があります。
  3. 高度なサニタイズ: より厳密なサニタイズが必要な場合は、他のライブラリや関数を使用することを検討してください。

まとめ

strip_tags() 関数は、文字列からHTMLおよびPHPタグを簡単に取り除くための強力なツールです。ユーザー入力のサニタイズやデータベースから取得したデータの整形に役立ちます。必要に応じて許可するタグを指定することもできるため、柔軟な処理が可能です。

制作のご相談・ご依頼はこちらから!

Author

WARACRO(ワラクロ)

2018年に起業し、Webデザイナー・WebディレクターとしてWordPress案件を中心にWeb制作のお仕事をしています。
このブログでは、Webサイト制作に関する情報をお届けしています。

Webデザイン学習におすすめの講座
To Top