ホームページ  >  記事  >  バックエンド開発  >  PHPは一部の文字を隠します

PHPは一部の文字を隠します

WBOY
WBOYオリジナル
2023-05-07 09:52:06947ブラウズ

PHP の開発では、ID カード番号や携帯電話番号を表示する場合など、中間の数字の一部を非表示にする必要がある場合があります。この記事では、PHP で一部の文字を非表示にする一般的に使用される方法をいくつか紹介します。

1. substr_replace() 関数

substr_replace 関数は文字列の一部を置換するために使用され、この関数を使用して、隠す必要がある一部の文字を隠すことができます。具体的な使い方は以下の通りです。

$str = '13812345678';
$hideStr = substr_replace($str, '****', 3, 4);
echo $hideStr; //输出:138****5678

上記の例では、携帯電話番号 13812345678 の 4 桁目から 7 桁目を非表示にし、「**」に置き換えます。このうち、第 2 パラメータは置換対象の文字列、第 3 パラメータは 0 から数えた置換開始位置、第 4 パラメータは置換の長さです。パラメータの位置と値は、必要に応じて調整できます。

2. str_pad() 関数

str_pad 関数は、指定された長さの文字列を埋めるために使用されます。この関数を使用すると、文字列の一部をインターセプトして固定長の隠しシンボルに置き換え、それを文字列の別の部分と連結できます。具体的な使用方法は次のとおりです。

$str = '110101199001011234';
$hideChar = '*';
$startPos = 6;
$replaceLen = 8;
$hideStr = str_pad('', $replaceLen, $hideChar);
$part1 = substr($str, 0, $startPos);
$part2 = substr($str, $startPos + $replaceLen);
$hidePart = $part1 . $hideStr . $part2;
echo $hidePart; //输出:110101********34

上記のコードは、ID 番号 110101199001011234 の 7 桁目から 14 桁目を隠し、「*」に置き換えます。このうち、2番目のパラメータは隠し文字列の長さ、3番目のパラメータは隠し文字、4番目のパラメータは隠す必要がある文字列の長さであり、必要に応じて調整し、最終的に隠しIDを出力します。番号。

3. 正規表現の置換

正規表現は、PHP での文字列の一致と置換によく使用されるツールでもあり、正規表現を使用して文字列を非表示にすることもできます。具体的な使用方法は次のとおりです。

$str = '13812345678';
$hideStr = preg_replace('/\d(?=\d{4})/', '*', $str);
echo $hideStr; //输出:138****5678

上記の例では、携帯電話番号の 2 桁目から 5 桁目を正規表現で検索し、「*」記号に置き換えています。このうち、正規表現で表される数値は \d (?=\d{4}) であり、その数値の後に 4 桁の数字が続くことを意味します。ここでは、正規表現のゼロ幅の正の予測を使用するため、一致した数値の前に隠れたシンボルを埋めるためのギャップが確保されます。

概要

この記事では、PHP で一部の文字を非表示にするためによく使用される 3 つの方法、つまり substr_replace 関数、str_pad 関数、および正規表現置換を紹介します。各方法には独自の特徴と適用可能なシナリオがあり、実際のニーズに応じて選択できます。実際の開発では、実際のビジネス ニーズとセキュリティ上の考慮事項に基づいて、対応するメソッドを使用して非表示にすることができます。

以上がPHPは一部の文字を隠しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。