ホームページ > バックエンド開発 > PHPチュートリアル > クレジット カード検証プログラム_PHP チュートリアル

クレジット カード検証プログラム_PHP チュートリアル

WBOY
リリース: 2016-07-13 17:24:01
オリジナル
751 人が閲覧しました


////////////////////////////////////////////// ///
// //
// クレジット カード検証ルーチン //
// 2000 年 5 月 15 日 //
// ariso 作成 //
// validateCardCode($number[,$cardtype]) //
/ //////////////////////////////////////////////// /

function validateCardCode($cardnumber, $cardtype = known)
{
//入力をクリーンアップ
$cardtype = strto lower($cardtype);
$cardnumber = ereg_replace( [-[:space:]], ,$cardnumber);
//タイプ固有のチェックを実行します
if ($cardtype ==不明) {
//タイプ固有のチェックをスキップします
}
elseif ($cardtype == mastercard){
if (strlen($cardnumber) != 16 || ! ereg( 5[1-5], $cardnumber)) 0 を返します。
}
elseif ($cardtype ==visa){
if ((strlen($cardnumber) != 13 && strlen($cardnumber) != 16) || substr($cardnumber, 0, 1) != 4)
0を返します。
}
elseif ($cardtype == amex){
if (strlen($cardnumber) != 15 || !ereg( 3[47], $cardnumber)) return a;


}
elseif ($cardtype == Discover){
if (strlen($cardnumber) != 16 || substr($cardnumber, 0, 4) != 6011) return 0;
}
else {
//無効な型が入力されました
return -1;
}

// MOD 10 チェックを開始します
$dig = toCharArray($cardnumber);
$numdig = sizeof ($dig);
$intIntJ = 0;
for ($intI=($numdig-2); $intI>=0; $intI-=2){
$dbl[$intIntJ] = $dig[$intI] * 2;
$intIntJ++;
}
$dblsz = sizeof($dbl);
$検証 =0;
for ($intI=0;$intI$add = toCharArray($dbl[$intI]);
for ($intIntJ=0;$intIntJ$validate += $add[$intIntJ];
}
$add = ;
}
for ($intI=($numdig-1); $intI>=0; $intI-=2){
$validate += $dig[$intI];
}
if (substr($validate, -1, 1) == 0) 1 を返します。
それ以外の場合は 0 を返します。
}

// 文字列を受け取り、文字の配列を返します
function toCharArray($intInput){
$len = strlen($intInput);
for ($intIntJ=0;$intIntJ$char[$intIntJ] = substr($intInput, $intIntJ, 1);
}
return ($char);
}
?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/532177.html技術記事 //////////////////////////////////////////////// // // // // クレジット カード検証ルーチン // // 2000 年 5 月 15 日 // // ariso 作成 // // validateCardCode($number[,$cardtype]) // //////.. .
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート