A PHP class for checking EAN8, EAN13, UPC and GTIN barcodes are valid (based on check digit).
https://packagist.org/packages/cedcommerce/validator
Note: This project currently does nothing other than have some validation functions. I expect to add additional functionality in the future.
composer require cedcommerce/validator
// Class instantation$barcode = '5060411950139';
$validator = new \Ced\Validator\Barcode();
$validator->setBarcode($barcode);
// Check barcode is in valid formatif ($validator->isValid()) {
echo'Valid :)';
} else {
echo'Invalid :(';
}
// Get the barcode typeecho'Barcode is in format of ' . $validator->getType();
// Possible formats returned are:// (string) "GTIN" which equals constant \Ced\Validator\Barcode::TYPE_GTIN// (string) "EAN-8" which equals constant \Ced\Validator\Barcode::TYPE_EAN_8// (string) "EAN" which equals constant \Ced\Validator\Barcode::TYPE_EAN// (string) "EAN Restricted" which equals constant \Ced\Validator\Barcode::TYPE_EAN_RESTRICTED// (string) "UPC" which equals constant \Ced\Validator\Barcode::TYPE_UPC// (string) "UPC Coupon Code" which equals constant \Ced\Validator\Barcode::TYPE_UPC_COUPON_CODE// Returns the barcode in GTIN-14 format$validator->getGTIN14()
// Returns the barcode as entered$validator->getBarcode()- Barcode generation
- GS1-128 barcode generation and interpretation
- The original package was created by Luke Cousins.
- The barcode validation function was based on work by Ferry Bouwhuis.
- EAN Restricted format added from the hassel-it/php-barcodes fork.
- Initial unit tests based on work in the hassel-it/php-barcodes fork.