Validate/CreditCard.php
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Validate
- Version
- $Id: CreditCard.php 24593 2012-01-05 20:35:02Z matthew $
\Zend_Validate_CreditCard
- Parent(s)
- \Zend_Validate_Abstract
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Constants
Properties

array $_cardLength = array(self::AMERICAN_EXPRESS => array(15), self::DINERS_CLUB => array(14), self::DINERS_CLUB_US => array(16), self::DISCOVER => array(16), self::JCB => array(16), self::LASER => array(16, 17, 18, 19), self::MAESTRO => array(12, 13, 14, 15, 16, 17, 18, 19), self::MASTERCARD => array(16), self::SOLO => array(16, 18, 19), self::UNIONPAY => array(16, 17, 18, 19), self::VISA => array(16))array(self::AMERICAN_EXPRESS => array(15), self::DINERS_CLUB => array(14), self::DINERS_CLUB_US => array(16), self::DISCOVER => array(16), self::JCB => array(16), self::LASER => array(16, 17, 18, 19), self::MAESTRO => array(12, 13, 14, 15, 16, 17, 18, 19), self::MASTERCARD => array(16), self::SOLO => array(16, 18, 19), self::UNIONPAY => array(16, 17, 18, 19), self::VISA => array(16))Details- Type
- array

array $_cardType = array(self::AMERICAN_EXPRESS => array('34', '37'), self::DINERS_CLUB => array('300', '301', '302', '303', '304', '305', '36'), self::DINERS_CLUB_US => array('54', '55'), self::DISCOVER => array('6011', '622126', '622127', '622128', '622129', '62213', '62214', '62215', '62216', '62217', '62218', '62219', '6222', '6223', '6224', '6225', '6226', '6227', '6228', '62290', '62291', '622920', '622921', '622922', '622923', '622924', '622925', '644', '645', '646', '647', '648', '649', '65'), self::JCB => array('3528', '3529', '353', '354', '355', '356', '357', '358'), self::LASER => array('6304', '6706', '6771', '6709'), self::MAESTRO => array('5018', '5020', '5038', '6304', '6759', '6761', '6763'), self::MASTERCARD => array('51', '52', '53', '54', '55'), self::SOLO => array('6334', '6767'), self::UNIONPAY => array('622126', '622127', '622128', '622129', '62213', '62214', '62215', '62216', '62217', '62218', '62219', '6222', '6223', '6224', '6225', '6226', '6227', '6228', '62290', '62291', '622920', '622921', '622922', '622923', '622924', '622925'), self::VISA => array('4'))array(self::AMERICAN_EXPRESS => array('34', '37'), self::DINERS_CLUB => array('300', '301', '302', '303', '304', '305', '36'), self::DINERS_CLUB_US => array('54', '55'), self::DISCOVER => array('6011', '622126', '622127', '622128', '622129', '62213', '62214', '62215', '62216', '62217', '62218', '62219', '6222', '6223', '6224', '6225', '6226', '6227', '6228', '62290', '62291', '622920', '622921', '622922', '622923', '622924', '622925', '644', '645', '646', '647', '648', '649', '65'), self::JCB => array('3528', '3529', '353', '354', '355', '356', '357', '358'), self::LASER => array('6304', '6706', '6771', '6709'), self::MAESTRO => array('5018', '5020', '5038', '6304', '6759', '6761', '6763'), self::MASTERCARD => array('51', '52', '53', '54', '55'), self::SOLO => array('6334', '6767'), self::UNIONPAY => array('622126', '622127', '622128', '622129', '62213', '62214', '62215', '62216', '62217', '62218', '62219', '6222', '6223', '6224', '6225', '6226', '6227', '6228', '62290', '62291', '622920', '622921', '622922', '622923', '622924', '622925'), self::VISA => array('4'))Details- Type
- array

\Zend_Translate $_defaultTranslator- Type
- \Zend_Translate
- Inherited_from
- \Zend_Validate_Abstract::$$_defaultTranslator

array $_errors = array()array()Details- Type
- array
- Inherited_from
- \Zend_Validate_Abstract::$$_errors

Integer $_messageLength = -1-1Details- Type
- Integer
- Inherited_from
- \Zend_Validate_Abstract::$$_messageLength

array $_messageTemplates = array(self::CHECKSUM => "'%value%' seems to contain an invalid checksum", self::CONTENT => "'%value%' must contain only digits", self::INVALID => "Invalid type given. String expected", self::LENGTH => "'%value%' contains an invalid amount of digits", self::PREFIX => "'%value%' is not from an allowed institute", self::SERVICE => "'%value%' seems to be an invalid creditcard number", self::SERVICEFAILURE => "An exception has been raised while validating '%value%'")array(self::CHECKSUM => "'%value%' seems to contain an invalid checksum", self::CONTENT => "'%value%' must contain only digits", self::INVALID => "Invalid type given. String expected", self::LENGTH => "'%value%' contains an invalid amount of digits", self::PREFIX => "'%value%' is not from an allowed institute", self::SERVICE => "'%value%' seems to be an invalid creditcard number", self::SERVICEFAILURE => "An exception has been raised while validating '%value%'")Details- Type
- array

array $_messageVariables = array()array()Details- Type
- array
- Inherited_from
- \Zend_Validate_Abstract::$$_messageVariables

array $_messages = array()array()Details- Type
- array
- Inherited_from
- \Zend_Validate_Abstract::$$_messages

bool $_obscureValue = falsefalseDetails- Type
- bool
- Inherited_from
- \Zend_Validate_Abstract::$$_obscureValue

\Zend_Translate $_translator- Type
- \Zend_Translate
- Inherited_from
- \Zend_Validate_Abstract::$$_translator

Boolean $_translatorDisabled = falsefalseDetails- Type
- Boolean
- Inherited_from
- \Zend_Validate_Abstract::$$_translatorDisabled
Methods

__get(string $property) : mixedMagic function returns the value of the requested property, if and only if it is the value or a message variable.
Inherited from: \Zend_Validate_Abstract::__get()| Name | Type | Description |
|---|---|---|
| $property | string |
| Type | Description |
|---|---|
| mixed |
| Exception | Description |
|---|---|
| \Zend_Validate_Exception |

_createMessage(string $messageKey, string $value) : stringConstructs and returns a validation failure message with the given message key and value.
Inherited from: \Zend_Validate_Abstract::_createMessage()Returns null if and only if $messageKey does not correspond to an existing template.
If a translator is available and a translation exists for $messageKey, the translation will be used.
| Name | Type | Description |
|---|---|---|
| $messageKey | string | |
| $value | string |
| Type | Description |
|---|---|
| string |

_error(string $messageKey, string $value = null) : void| Name | Type | Description |
|---|---|---|
| $messageKey | string | |
| $value | string | OPTIONAL |

_setValue(mixed $value) : voidSets the value to be validated and clears the messages and errors arrays
Inherited from: \Zend_Validate_Abstract::_setValue()| Name | Type | Description |
|---|---|---|
| $value | mixed |

addType(string | array $type) : \Zend_Validate_CreditCardAdds a CCI to be accepted by validation
| Name | Type | Description |
|---|---|---|
| $type | string | array | Type to allow for validation |
| Type | Description |
|---|---|
| \Zend_Validate_CreditCard | Provides a fluid interface |

getDefaultTranslator() : \Zend_Translate_Adapter | nullGet default translation object for all validate objects
Inherited from: \Zend_Validate_Abstract::getDefaultTranslator()| Type | Description |
|---|---|
| \Zend_Translate_Adapter | null |

getErrors() : arrayReturns array of validation failure message codes
Inherited from: \Zend_Validate_Abstract::getErrors()| Type | Description |
|---|---|
| array |

getMessageLength() : integerReturns the maximum allowed message length
Inherited from: \Zend_Validate_Abstract::getMessageLength()| Type | Description |
|---|---|
| integer |

getMessageTemplates() : arrayReturns the message templates from the validator
Inherited from: \Zend_Validate_Abstract::getMessageTemplates()| Type | Description |
|---|---|
| array |

getMessageVariables() : arrayReturns an array of the names of variables that are used in constructing validation failure messages
Inherited from: \Zend_Validate_Abstract::getMessageVariables()| Type | Description |
|---|---|
| array |

getMessages() : arrayReturns array of validation failure messages
Inherited from: \Zend_Validate_Abstract::getMessages()The array keys are validation failure message identifiers, and the array values are the corresponding human-readable message strings.
If isValid() was never called or if the most recent isValid() call returned true, then this method returns an empty array.
| Type | Description |
|---|---|
| array |

getObscureValue() : boolRetrieve flag indicating whether or not value should be obfuscated in messages
Inherited from: \Zend_Validate_Abstract::getObscureValue()| Type | Description |
|---|---|
| bool |

getTranslator() : \Zend_Translate_Adapter | null| Type | Description |
|---|---|
| \Zend_Translate_Adapter | null |

hasDefaultTranslator() : booleanIs there a default translation object set?
Inherited from: \Zend_Validate_Abstract::hasDefaultTranslator()| Type | Description |
|---|---|
| boolean |

hasTranslator() : boolDoes this validator have its own specific translator?
Inherited from: \Zend_Validate_Abstract::hasTranslator()| Type | Description |
|---|---|
| bool |

isValid(string $value) : booleanDefined by Zend_Validate_Interface
Returns true if and only if $value follows the Luhn algorithm (mod-10 checksum)
| Name | Type | Description |
|---|---|---|
| $value | string |
| Type | Description |
|---|---|
| boolean |
| Exception | Description |
|---|---|
| \Zend_Validate_Exception | If validation of $value is impossible |

setDefaultTranslator(\Zend_Translate | \Zend_Translate_Adapter | null $translator = null) : voidSet default translation object for all validate objects
Inherited from: \Zend_Validate_Abstract::setDefaultTranslator()| Name | Type | Description |
|---|---|---|
| $translator | \Zend_Translate | \Zend_Translate_Adapter | null |

setDisableTranslator(bool $flag) : \Zend_Validate_AbstractIndicate whether or not translation should be disabled
Inherited from: \Zend_Validate_Abstract::setDisableTranslator()| Name | Type | Description |
|---|---|---|
| $flag | bool |
| Type | Description |
|---|---|
| \Zend_Validate_Abstract |

setMessage(string $messageString, string $messageKey = null) : \Zend_Validate_AbstractSets the validation failure message template for a particular key
Inherited from: \Zend_Validate_Abstract::setMessage()| Name | Type | Description |
|---|---|---|
| $messageString | string | |
| $messageKey | string | OPTIONAL |
| Type | Description |
|---|---|
| \Zend_Validate_Abstract | Provides a fluent interface |
| Exception | Description |
|---|---|
| \Zend_Validate_Exception |

setMessageLength(integer $length = -1) : voidSets the maximum allowed message length
Inherited from: \Zend_Validate_Abstract::setMessageLength()| Name | Type | Description |
|---|---|---|
| $length | integer |

setMessages(array $messages) : \Zend_Validate_AbstractSets validation failure message templates given as an array, where the array keys are the message keys, and the array values are the message template strings.
Inherited from: \Zend_Validate_Abstract::setMessages()| Name | Type | Description |
|---|---|---|
| $messages | array |
| Type | Description |
|---|---|
| \Zend_Validate_Abstract |

setObscureValue(bool $flag) : \Zend_Validate_AbstractSet flag indicating whether or not value should be obfuscated in messages
Inherited from: \Zend_Validate_Abstract::setObscureValue()| Name | Type | Description |
|---|---|---|
| $flag | bool |
| Type | Description |
|---|---|
| \Zend_Validate_Abstract |

setService(\unknown_type $service) : voidSets a new callback for service validation
| Name | Type | Description |
|---|---|---|
| $service | \unknown_type |

setTranslator(\Zend_Translate | \Zend_Translate_Adapter | null $translator = null) : \Zend_Validate_Abstract| Name | Type | Description |
|---|---|---|
| $translator | \Zend_Translate | \Zend_Translate_Adapter | null |
| Type | Description |
|---|---|
| \Zend_Validate_Abstract |

setType(string | array $type) : \Zend_Validate_CreditCardSets CCIs which are accepted by validation
| Name | Type | Description |
|---|---|---|
| $type | string | array | Type to allow for validation |
| Type | Description |
|---|---|
| \Zend_Validate_CreditCard | Provides a fluid interface |