有很多类可以生成条形码图像,但我找不到可以创建有效 EAN13 编号的函数。内部编号应以 200 开头...如何生成有效的 EAN13 编号,该编号将成为给定值的下一个有效 EAN?
验证函数如下所示:
function ean13_check($digits){
if($digits <= 0) return 0;
while(strlen($digits) < 13){
$digits = '0'.$digits;
}
$digits=preg_split("//",$digits,-1,PREG_SPLIT_NO_EMPTY);
$a=$b=0;
for($i=0;$i<6;$i++){
$a+=(int)array_shift($digits);
$b+=(int)array_shift($digits);
}
$total=($a*1)+($b*3);
$nextten=ceil($total/10)*10;
return $nextten-$total==array_shift($digits);
}