View file File name : test.php Content :<?php use JetBrains\PhpStorm\Pure; $tags = [ 1 => 'makka market', 2 => '31312132123111121', 3 => 'dafjdlkajfl', 4 => '60.0', 5 => '30.00', ]; $qrTlv = ''; foreach ($tags as $key => $value) { $valueParsed = ($key == 8 || $key == 9) ? $value : mb_convert_encoding($value, 'UTF-8', 'auto'); $__length = getLength($valueParsed); $qrTlv .= toString($key, $valueParsed, $__length); } echo bin2hex($qrTlv); echo base64_encode($qrTlv); function toString($__tag, $__value, $__length): string { $value = (string)$__value; return toHex($__tag) . toHex($__length) . $value; } function toHex($value): bool|string { return pack("H*", sprintf("%02X", $value)); } function getLength($value): int { return strlen($value); }