ホームページ > バックエンド開発 > PHPチュートリアル > PHP は、クレジット カード番号が有効かどうかを検証する Luhn アルゴリズムを実装します_PHP チュートリアル

PHP は、クレジット カード番号が有効かどうかを検証する Luhn アルゴリズムを実装します_PHP チュートリアル

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-07-13 10:00:34
オリジナル
945 人が閲覧しました

PHP は、クレジット カード番号が有効かどうかを検証する Luhn アルゴリズムを実装します

この記事では、Luhn アルゴリズムを通じてクレジット カード番号が有効かどうかを検証する PHP 実装を主に紹介し、PHP での Luhn アルゴリズムの実装を分析します。および関連するアプリケーションスキルには特定の参照ポイントがあり、必要な友人はそれを参照できます

この記事の例では、PHP が Luhn アルゴリズムを実装してクレジット カード番号が有効かどうかを検証する方法を説明します。皆さんの参考に共有してください。具体的な実装方法は以下の通りです

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

$numbers = "49927398716 49927398717 1234567812345678 1234567812345670";

foreach (split(' ', $numbers) as $n)

echo "$n は ", luhnTest($n) ? '有効' : '無効', '
';

関数 luhnTest($num) {

$len = strlen($num);

for ($i = $len-1; $i >= 0; $i--) {

$ord = ord($num[$i]);

if (($len - 1) & $i) {

$sum += $ord;

} 他 {

$sum += $ord / 5 + (2 * $ord) % 10;

}

}

return $sum % 10 == 0;

}

実行結果

?

1

2

3

4

49927398716は有効です

49927398717 は無効です

1234567812345678 は無効です

1234567812345670は有効です

より簡潔なコードは次のとおりです:

コードは次のとおりです:

関数 luhn_test($num) {
$str = '';
foreach( array_reverse( str_split( $num ) ) as $i => $c ) $str .= ($i % 2 ? $c * 2 : $c );
return array_sum( str_split($str) ) % 10 == 0;
}
foreach (array('49927398716','49927398717','1234567812345678','1234567812345670') as $n)
echo "$n は ", luhn_test($n) ? '有効' : '無効', "
n";

出力結果は以下の通りです

?

1

2

3

4

49927398716は有効です

49927398717 は無効です

1234567812345678 は無効です

1234567812345670は有効です

この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/973138.html技術記事 PHP は、クレジット カード番号が有効かどうかを検証するための Luhn アルゴリズムを実装します。この記事では、Luhn アルゴリズムを通じてクレジット カード番号が有効かどうかを検証するための PHP 実装と、Luhn アルゴリズムの PHP 実装の分析例を紹介します。 .
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
PHP 拡張子 intl
から 1970-01-01 08:00:00
0
0
0
phpのデータ取得?
から 1970-01-01 08:00:00
0
0
0
PHP GET エラー レポート
から 1970-01-01 08:00:00
0
0
0
phpを上手に学ぶ方法
から 1970-01-01 08:00:00
0
0
0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート