現在の位置: ホーム> 最新記事一覧> ストリップとstr_ireplaceを組み合わせて敏感な単語の置換を実現する方法

ストリップとstr_ireplaceを組み合わせて敏感な単語の置換を実現する方法

M66 2025-05-31

PHPでは、特にソーシャルプラットフォーム、フォーラム、その他のWebサイトで、敏感な単語代替の処理は一般的な要件です。ユーザーの言語が規制に準拠するようにするために、敏感な単語を正確に置き換える必要があります。 StriposStr_ireplaceは、これを達成するためにうまく機能する2つの一般的に使用されるPHP関数です。

基本的なアイデア

Striposは、サブストリングの最初の発生を見つけるために使用される関数であり、症例感受性です。 str_ireplaceは、文字列を置き換えるために使用できる関数であり、ケースに依存しないことでもあります。 Striposを介して敏感な単語の位置を見つけてから、 str_ireplaceに置き換えることができます。

1。ストリップ機能

StripOS関数の関数は、文字列の最初の発生の位置情報を見つけ、文字列内のサブストリングの最初の発生の位置を返すことです。この関数は症例感受性です。

文法:

 stripos($haystack, $needle, $offset);
  • $ haystack :見つける文字列。

  • $針:見つかるサブストリング。

  • $ offset :オプション、検索を開始する場所を指定します。

例:

 $haystack = "Hello world!";
$needle = "world";
$position = stripos($haystack, $needle);
echo $position; // 出力 6

2。STR_IREPLACE関数

str_ireplaceは、文字列を置き換えるために使用される関数であり、症例に敏感です。

文法:

 str_ireplace($search, $replace, $subject, &$count);
  • $検索:検索する文字列。

  • $の交換:交換に使用される文字列。

  • $件名:交換するターゲット文字列。

  • $ count :オプション、交換数を返します。

例:

 $subject = "Hello world!";
$search = "world";
$replace = "PHP";
$result = str_ireplace($search, $replace, $subject);
echo $result; // 出力 Hello PHP!

3.ストリップstr_ireplaceを一緒に使用する方法

敏感な単語を正確に交換するために、 StriposStr_ireplaceの機能を組み合わせることができます。 Striposは、敏感な単語の位置を見つけるために使用されます。敏感な単語が存在する場合は、 str_ireplaceに置き換えます。

サンプルコード:

 <?php
// 敏感な単語リストの定義
$sensitiveWords = ['badword', 'offensiveword', 'curseword'];

// 入力された文字列
$text = "This is a test string containing badword and offensiveword.";

// 敏感な単語リストを通過します,1つと交換します
foreach ($sensitiveWords as $word) {
    // 使用 stripos 敏感な単語が含まれているかどうかを判断します
    if (stripos($text, $word) !== false) {
        // 使用 str_ireplace 敏感な単語を置き換えます
        $text = str_ireplace($word, '***', $text);
    }
}

echo $text;  // 出力:This is a test string containing *** and ***.
?>

4。URLで敏感な単語を処理します

多くの場合、ユーザーが入力したテキストにはURLが含まれている場合があります。これらのURLに敏感な単語がある場合は、それらを処理する必要があります。 StriposStr_ireplaceを使用して、URLの敏感な単語を簡単に置き換えます。たとえば、URLに敏感な単語が表示される場合、ユーザーが入力したURLが安全であることを確認するために、ドメイン名をM66.NETに置き換えることができます。