Validation zend framework 2条码代码128错误验证

Validation zend framework 2条码代码128错误验证,validation,zend-framework2,barcode,code128,Validation,Zend Framework2,Barcode,Code128,我正在尝试验证zend framework 2条形码,但没有成功 验证总是返回false $bc128 = new Code128(); $bc128->setText('TEST'); $valid = new \Zend\Validator\Barcode('code128'); if ($valid->isValid($bc128->getTextToDisplay())) { exit('valid'); } el

我正在尝试验证zend framework 2条形码,但没有成功

验证总是返回false

    $bc128 = new Code128();
    $bc128->setText('TEST');
    $valid = new \Zend\Validator\Barcode('code128');
    if ($valid->isValid($bc128->getTextToDisplay())) {
        exit('valid');
    } else {
        exit('invalid');
    }

有人知道发生了什么吗?

这显然像是条形码验证器校验和逻辑中的一个错误。验证程序尝试在几个步骤中将null(默认值)强制转换为布尔值。(我不知道为什么)

您现在可以通过为
useChecksum
传递布尔
false
选项来解决问题,如下所示:

$bc128 = new \Zend\Barcode\Object\Code128();
$bc128->setText('TEST');

$options = array(
    'adapter' => 'code128',
    'useChecksum' => false
    );

$valid = new \Zend\Validator\Barcode($options);

if ($valid->isValid($bc128->getTextToDisplay())) {
  exit('valid');
} else {
exit('invalid');
}
相关github问题