public static function int2bytes($len, $int = 0, $l = false)
{
$hexstr = dechex($int);
if ($len === null) {
if (mb_orig_strlen($hexstr) % 2) {
$hexstr = "0" . $hexstr;
}
} else {
$hexstr = str_repeat('0', $len * 2 - mb_orig_strlen($hexstr)) . $hexstr;
}
$bytes = mb_orig_strlen($hexstr) / 2;
$bin = '';
for ($i = 0; $i < $bytes; ++$i) {
$bin .= chr(hexdec(substr($hexstr, $i * 2, 2)));
}
return $l ? strrev($bin) : $bin;
}