この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター。
ここ数日の作業で、「銀行カード」ページのプロトタイプは以下のようになりましたが、このうち、異なる銀行カードのカード番号の下4桁のみを表示できるようにし、その他の機能を追加しました。数字は * 文字で隠されています。
フロントエンドと通信した後、番号を非表示にします。これには、PHP の文字列置換 substr_replace 関数が使用されます。
#PHP 文字列置換は、その名前が示すように、文字列から指定した文字列を置換するために使用されます。
関連する関数は次のとおりです。
substr_replace()——文字列の一部を別の文字列に置換します
str_replace() ——文字列を使用して、文字列内の他の文字を置換します。
1. substr_replace()
構文:
substr_replace(string,replacement,start,length)
説明 | |
---|---|
# #####必須。チェックする文字列を指定します。 | 交換 |
必須。挿入する文字列を指定します。 | #start |
必須。文字列内のどこから置換を開始するかを指定します。 |
正の数値 - 文字列内の指定された位置から置換を開始します。
|
オプション。置換する文字数を指定します。デフォルトは文字列の長さと同じです。 |
正の数値 - 置換される文字列の長さ
|
置換された文字列を返します |
構文:
str_replace(find,replac,string,count)
##必須。検索する値を指定します。 | |
---|---|
#replace | ##必須。 find の値を置き換える値を指定します。 |
必須。検索する文字列を指定します。 | |
オプション。置換の数をカウントする変数。 | #戻り値 |
置換値を含む文字列または配列を返します | # 以上が文字列置換substr_replace()関数とstr_replace()関数の基礎知識ですので、実際の作業では最初のone-substr_replace()関数を使用しました。 [おすすめ: PHP ビデオ チュートリアル ] 問い合わせたところ、現在の国内銀行カードの桁数は 16 桁または 19 桁であることがわかり、データから確認してみました。 table 銀行カード番号を取得したら、まず strlen() 関数を使用して文字列の長さをカウントします。 銀行カードが 16 桁の場合、最初の 12 桁は 12 * に置き換えられます。つまり、置換は ************ です。銀行カード 19 桁の番号の場合、最初の 15 桁が 15 * に置き換えられます、つまり、置換は ****************; コードは次のとおりです: テスト結果は次のとおりです: |