zend框架2条形码代码128验证错误



im试图验证zend框架2条形码,但没有成功

验证总是返回错误的

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

有人知道发生了什么事吗?

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

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

$bc128 = new ZendBarcodeObjectCode128();
$bc128->setText('TEST');
$options = array(
    'adapter' => 'code128',
    'useChecksum' => false
    );
$valid = new ZendValidatorBarcode($options);
if ($valid->isValid($bc128->getTextToDisplay())) {
  exit('valid');
} else {
exit('invalid');
}

相关github问题链接。

相关内容

  • 没有找到相关文章

最新更新