Skip to content

Commit ae59083

Browse files
authored
TypeCode32 class definition
1 parent 516df0d commit ae59083

1 file changed

Lines changed: 61 additions & 0 deletions

File tree

src/Types/TypeCode32.php

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
<?php
2+
3+
namespace Picqer\Barcode\Types;
4+
5+
use Picqer\Barcode\Barcode;
6+
/*
7+
* CODE 32 - italian pharmaceutical
8+
* General-purpose code in very wide use world-wide
9+
*/
10+
11+
class TypeCode32 extends TypeCode39
12+
{
13+
protected $conversionTable32 = [
14+
'0' => '0',
15+
'1' => '1',
16+
'2' => '2',
17+
'3' => '3',
18+
'4' => '4',
19+
'5' => '5',
20+
'6' => '6',
21+
'7' => '7',
22+
'8' => '8',
23+
'9' => '9',
24+
'10' => 'B',
25+
'11' => 'C',
26+
'12' => 'D',
27+
'13' => 'F',
28+
'14' => 'G',
29+
'15' => 'H',
30+
'16' => 'J',
31+
'17' => 'K',
32+
'18' => 'L',
33+
'19' => 'M',
34+
'20' => 'N',
35+
'21' => 'P',
36+
'22' => 'Q',
37+
'23' => 'R',
38+
'24' => 'S',
39+
'25' => 'T',
40+
'26' => 'U',
41+
'27' => 'V',
42+
'28' => 'W',
43+
'29' => 'X',
44+
'30' => 'Y',
45+
'31' => 'Z'
46+
];
47+
48+
49+
50+
public function getBarcodeData(string $code): Barcode
51+
{
52+
$code39="";
53+
$codeElab=$code;
54+
for($e=5;$e>=0;$e--)
55+
{
56+
$code39.=$this->conversionTable32[intval($codeElab / pow(32,$e))];
57+
$codeElab=intval($codeElab % pow(32,$e));
58+
}
59+
return parent::getBarcodeData($code39);
60+
}
61+
}

0 commit comments

Comments
 (0)