function barcode_s2o5_encode in Barcode 6.2
Same name and namespace in other branches
- 7.2 plugins/s2o5.inc \barcode_s2o5_encode()
1 call to barcode_s2o5_encode()
- barcode_s2o5_barcode in plugins/
s2o5.inc - @file Barcode plugin Standard 2 of 5: Used in airline ticket marking, photofinishing Industrial 2 of 5: Same as Standard 2 of 5
File
- plugins/
s2o5.inc, line 109 - Barcode plugin Standard 2 of 5: Used in airline ticket marking, photofinishing Industrial 2 of 5: Same as Standard 2 of 5
Code
function barcode_s2o5_encode($barnumber, $settings) {
$enc_table = array(
"NNWWN",
"WNNNW",
"NWNNW",
"WWNNN",
"NNWNW",
"WNWNN",
"NWWNN",
"NNNWW",
"WNNWN",
"NWNWN",
);
$guards = array(
"11011010",
"1101011",
);
$len = strlen($barnumber);
$barnumber = barcode_check_digit($barnumber, $len);
if ($len == strlen($barnumber) && substr($barnumber, -1) != '0') {
$barnumber .= '0';
}
$mfc_str = "";
$widebar = str_pad("", $settings->n2w, "1", STR_PAD_LEFT);
$widebar .= "0";
for ($i = 0; $i < strlen($barnumber); $i++) {
$num = (int) $barnumber[$i];
$str = "";
$str = str_replace("N", "10", $enc_table[$num]);
$str = str_replace("W", $widebar, $str);
$mfc_str .= $str;
}
return $guards[0] . $mfc_str . $guards[1];
}