Validate/CreditCard.php

Show: inherited
Table of Contents

Zend Framework

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 [email protected] 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

Package: Zend\Validate

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

Constantstring  ALL = 'All'

Detected CCI list

string
Constant  AMERICAN_EXPRESS = 'American_Express'
Constant  UNIONPAY = 'Unionpay'
Constant  DINERS_CLUB = 'Diners_Club'
Constant  DINERS_CLUB_US = 'Diners_Club_US'
Constant  DISCOVER = 'Discover'
Constant  JCB = 'JCB'
Constant  LASER = 'Laser'
Constant  MAESTRO = 'Maestro'
Constant  MASTERCARD = 'Mastercard'
Constant  SOLO = 'Solo'
Constant  VISA = 'Visa'
Constant  CHECKSUM = 'creditcardChecksum'
Constant  CONTENT = 'creditcardContent'
Constant  INVALID = 'creditcardInvalid'
Constant  LENGTH = 'creditcardLength'
Constant  PREFIX = 'creditcardPrefix'
Constant  SERVICE = 'creditcardService'
Constant  SERVICEFAILURE = 'creditcardServiceFailure'

Properties

Propertyprotectedarray $_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))

List of allowed CCV lengths

Default valuearray(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
Propertyprotectedarray $_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'))

List of accepted CCV provider tags

Default valuearray(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
Propertyprotected\Zend_Translate $_defaultTranslator =
staticinherited

Default translation object for all validate objects

Inherited from: \Zend_Validate_Abstract::$$_defaultTranslator
Propertyprotectedarray $_errors = array()
inherited

Array of validation failure message codes

Inherited from: \Zend_Validate_Abstract::$$_errors
Default valuearray()Details
Type
array
Inherited_from
\Zend_Validate_Abstract::$$_errors  
PropertyprotectedInteger $_messageLength = -1
staticinherited

Limits the maximum returned length of a error message

Inherited from: \Zend_Validate_Abstract::$$_messageLength
Default value-1Details
Type
Integer
Inherited_from
\Zend_Validate_Abstract::$$_messageLength  
Propertyprotectedarray $_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%'")

Validation failure message template definitions

Default valuearray(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
Propertyprotectedarray $_messageVariables = array()
inherited

Additional variables available for validation failure messages

Inherited from: \Zend_Validate_Abstract::$$_messageVariables
Default valuearray()Details
Type
array
Inherited_from
\Zend_Validate_Abstract::$$_messageVariables  
Propertyprotectedarray $_messages = array()
inherited

Array of validation failure messages

Inherited from: \Zend_Validate_Abstract::$$_messages
Default valuearray()Details
Type
array
Inherited_from
\Zend_Validate_Abstract::$$_messages  
Propertyprotectedbool $_obscureValue = false
inherited

Flag indidcating whether or not value should be obfuscated in error messages

Inherited from: \Zend_Validate_Abstract::$$_obscureValue
Default valuefalseDetails
Type
bool
Inherited_from
\Zend_Validate_Abstract::$$_obscureValue  
Propertyprotectedcallback $_service =

Service callback for additional validation

Details
Type
callback
Propertyprotected\Zend_Translate $_translator =
inherited

Translation object

Inherited from: \Zend_Validate_Abstract::$$_translator
PropertyprotectedBoolean $_translatorDisabled = false
inherited

Is translation disabled?

Inherited from: \Zend_Validate_Abstract::$$_translatorDisabled
Default valuefalseDetails
Type
Boolean
Inherited_from
\Zend_Validate_Abstract::$$_translatorDisabled  
Propertyprotectedarray $_type = array()

CCIs which are accepted by validation

Default valuearray()Details
Type
array
Propertyprotectedmixed $_value =
inherited

The value to be validated

Inherited from: \Zend_Validate_Abstract::$$_value
Details
Type
mixed
Inherited_from
\Zend_Validate_Abstract::$$_value  

Methods

methodpublic__construct( $options = array()) : void

Constructor

Parameters
Name Type Description
$options
methodpublic__get(string $property) : mixed
inherited

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()
Parameters
Name Type Description
$property string
Returns
Type Description
mixed
Throws
Exception Description
\Zend_Validate_Exception
methodprotected_createMessage(string $messageKey, string $value) : string
inherited

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.

Parameters
Name Type Description
$messageKey string
$value string
Returns
Type Description
string
methodprotected_error(string $messageKey, string $value = null) : void
inherited

Inherited from: \Zend_Validate_Abstract::_error()
Parameters
Name Type Description
$messageKey string
$value string

OPTIONAL

methodprotected_setValue(mixed $value) : void
inherited

Sets the value to be validated and clears the messages and errors arrays

Inherited from: \Zend_Validate_Abstract::_setValue()
Parameters
Name Type Description
$value mixed
methodpublicaddType(string | array $type) : \Zend_Validate_CreditCard

Adds a CCI to be accepted by validation

Parameters
Name Type Description
$type string | array

Type to allow for validation

Returns
Type Description
\Zend_Validate_CreditCard Provides a fluid interface
methodpublicgetDefaultTranslator() : \Zend_Translate_Adapter | null
staticinherited

Get default translation object for all validate objects

Inherited from: \Zend_Validate_Abstract::getDefaultTranslator()
Returns
Type Description
\Zend_Translate_Adapter | null
methodpublicgetErrors() : array
inherited

Returns array of validation failure message codes

Inherited from: \Zend_Validate_Abstract::getErrors()
Returns
Type Description
array
methodpublicgetMessageLength() : integer
staticinherited

Returns the maximum allowed message length

Inherited from: \Zend_Validate_Abstract::getMessageLength()
Returns
Type Description
integer
methodpublicgetMessageTemplates() : array
inherited

Returns the message templates from the validator

Inherited from: \Zend_Validate_Abstract::getMessageTemplates()
Returns
Type Description
array
methodpublicgetMessageVariables() : array
inherited

Returns an array of the names of variables that are used in constructing validation failure messages

Inherited from: \Zend_Validate_Abstract::getMessageVariables()
Returns
Type Description
array
methodpublicgetMessages() : array
inherited

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.

Returns
Type Description
array
methodpublicgetObscureValue() : bool
inherited

Retrieve flag indicating whether or not value should be obfuscated in messages

Inherited from: \Zend_Validate_Abstract::getObscureValue()
Returns
Type Description
bool
methodpublicgetService() : callback

Returns the actual set service

Returns
Type Description
callback
methodpublicgetTranslator() : \Zend_Translate_Adapter | null
inherited

Return translation object

Inherited from: \Zend_Validate_Abstract::getTranslator()
Returns
Type Description
\Zend_Translate_Adapter | null
methodpublicgetType() : array

Returns a list of accepted CCIs

Returns
Type Description
array
methodpublichasDefaultTranslator() : boolean
staticinherited

Is there a default translation object set?

Inherited from: \Zend_Validate_Abstract::hasDefaultTranslator()
Returns
Type Description
boolean
methodpublichasTranslator() : bool
inherited

Does this validator have its own specific translator?

Inherited from: \Zend_Validate_Abstract::hasTranslator()
Returns
Type Description
bool
methodpublicisValid(string $value) : boolean

Defined by Zend_Validate_Interface

Returns true if and only if $value follows the Luhn algorithm (mod-10 checksum)

Parameters
Name Type Description
$value string
Returns
Type Description
boolean
Throws
Exception Description
\Zend_Validate_Exception If validation of $value is impossible
methodpublicsetDefaultTranslator(\Zend_Translate | \Zend_Translate_Adapter | null $translator = null) : void
staticinherited

Set default translation object for all validate objects

Inherited from: \Zend_Validate_Abstract::setDefaultTranslator()
Parameters
Name Type Description
$translator \Zend_Translate | \Zend_Translate_Adapter | null
methodpublicsetDisableTranslator(bool $flag) : \Zend_Validate_Abstract
inherited

Indicate whether or not translation should be disabled

Inherited from: \Zend_Validate_Abstract::setDisableTranslator()
Parameters
Name Type Description
$flag bool
Returns
Type Description
\Zend_Validate_Abstract
methodpublicsetMessage(string $messageString, string $messageKey = null) : \Zend_Validate_Abstract
inherited

Sets the validation failure message template for a particular key

Inherited from: \Zend_Validate_Abstract::setMessage()
Parameters
Name Type Description
$messageString string
$messageKey string

OPTIONAL

Returns
Type Description
\Zend_Validate_Abstract Provides a fluent interface
Throws
Exception Description
\Zend_Validate_Exception
methodpublicsetMessageLength(integer $length = -1) : void
staticinherited

Sets the maximum allowed message length

Inherited from: \Zend_Validate_Abstract::setMessageLength()
Parameters
Name Type Description
$length integer
methodpublicsetMessages(array $messages) : \Zend_Validate_Abstract
inherited

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()
Parameters
Name Type Description
$messages array
Returns
Type Description
\Zend_Validate_Abstract
methodpublicsetObscureValue(bool $flag) : \Zend_Validate_Abstract
inherited

Set flag indicating whether or not value should be obfuscated in messages

Inherited from: \Zend_Validate_Abstract::setObscureValue()
Parameters
Name Type Description
$flag bool
Returns
Type Description
\Zend_Validate_Abstract
methodpublicsetService(\unknown_type $service) : void

Sets a new callback for service validation

Parameters
Name Type Description
$service \unknown_type
methodpublicsetTranslator(\Zend_Translate | \Zend_Translate_Adapter | null $translator = null) : \Zend_Validate_Abstract
inherited

Set translation object

Inherited from: \Zend_Validate_Abstract::setTranslator()
Parameters
Name Type Description
$translator \Zend_Translate | \Zend_Translate_Adapter | null
Returns
Type Description
\Zend_Validate_Abstract
methodpublicsetType(string | array $type) : \Zend_Validate_CreditCard

Sets CCIs which are accepted by validation

Parameters
Name Type Description
$type string | array

Type to allow for validation

Returns
Type Description
\Zend_Validate_CreditCard Provides a fluid interface
methodpublictranslatorIsDisabled() : bool
inherited

Is translation disabled?

Inherited from: \Zend_Validate_Abstract::translatorIsDisabled()
Returns
Type Description
bool
Documentation was generated by phpDocumentor 2.0.0a8.