Tim Nagel
Contributed by Tim Nagel in #4734 and #5072

If you are developing an e-commerce solution based on Symfony2, you might want to validate a credit card number before sending it to your payment gateway. Doing so is very simple in Symfony 2.2 thanks to the Luhn algorithm and its implementation as a validator:

1
2
3
4
5
6
7
8
9
10
11
// src/Acme/SubscriptionBundle/Entity/Transaction.php

use Symfony\Component\Validator\Constraints as Assert;

class Transaction
{
    /**
     * @Assert\Luhn(message = "Please check your credit card number.")
     */
    protected $cardNumber;
}

You can also check the card scheme thanks to Symfony\Component\Validator\Constraints\CardSchemeValidator.

Published in #Living on the edge