15 "amx" =>
'/^3[47].{13}$/',
16 "dlt" =>
'/^4.{15}$/',
17 "dnc" =>
'/^30[0-5].{11}$|^3[68].{12}$/',
18 "dsc" =>
'/^6011.{12}$/',
19 "enr" =>
'/^2014.{11}$|^2149.{11}$/',
20 "jcb" =>
'/^3.{15}$|^2131|1800.{11}$/',
21 "mcd" =>
'/^5[1-5].{14}$/',
22 "swi" =>
'/^[456].{15}$|^[456].{17,18}$/',
23 "vis" =>
'/^4.{15}$|^4.{12}$/',
39 if ( isset( $this->_aCardsInfo[$sType] ) ) {
40 $blValid = preg_match( $this->_aCardsInfo[$sType], $sNumber );
57 $sYears = substr( $sDate, 2, 2 );
58 $sMonth = substr( $sDate, 0, 2 );
59 $sDay = date(
"t", mktime( 11, 59, 59, $sMonth, 1, $sYears ) );
61 $iExpDate = mktime( 23, 59, 59, $sMonth, $sDay, $sYears );
62 if ( time() > $iExpDate ) {
80 if ( ( $iLength = strlen( $sNumber ) ) ) {
85 for ( $iPos = 0; $iPos < $iLength; $iPos++ ) {
88 $iCurrDigit = ( int ) $sNumber{$iPos};
91 $iAddValue = ( ( $iPos % 2 == $iMod ) ? 2 : 1 ) * $iCurrDigit;
94 $iModSum += ( $iAddValue > 9 ) ? $iAddValue - 9 : $iAddValue;
97 $blValid = ( $iModSum % 10 ) == 0;
114 $sNumber = preg_replace(
"/[^0-9]/",
"", $sNumber );