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
-1
Details- 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 = false
false
Details- Type
- bool
- Inherited_from
- \Zend_Validate_Abstract::$$_obscureValue


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


Boolean $_translatorDisabled = false
false
Details- Type
- Boolean
- Inherited_from
- \Zend_Validate_Abstract::$$_translatorDisabled
Methods


__get(string $property) : mixed
Magic 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) : string
Constructs 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) : void
Sets 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_CreditCard
Adds 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 | null
Get default translation object for all validate objects
Inherited from: \Zend_Validate_Abstract::getDefaultTranslator()Type | Description |
---|---|
\Zend_Translate_Adapter | null |


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


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


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


getMessageVariables() : array
Returns 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() : array
Returns 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() : bool
Retrieve 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() : boolean
Is there a default translation object set?
Inherited from: \Zend_Validate_Abstract::hasDefaultTranslator()Type | Description |
---|---|
boolean |


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


isValid(string $value) : boolean
Defined 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) : void
Set 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_Abstract
Indicate 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_Abstract
Sets 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) : void
Sets the maximum allowed message length
Inherited from: \Zend_Validate_Abstract::setMessageLength()Name | Type | Description |
---|---|---|
$length | integer |


setMessages(array $messages) : \Zend_Validate_Abstract
Sets 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_Abstract
Set 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) : void
Sets 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_CreditCard
Sets 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 |