first commit
This commit is contained in:
43
prints3/filters/FilterASCIIHexDecode.php
Executable file
43
prints3/filters/FilterASCIIHexDecode.php
Executable file
@ -0,0 +1,43 @@
|
||||
<?php
|
||||
/**
|
||||
* This file is part of FPDI
|
||||
*
|
||||
* @package FPDI
|
||||
* @copyright Copyright (c) 2015 Setasign - Jan Slabon (http://www.setasign.com)
|
||||
* @license http://opensource.org/licenses/mit-license The MIT License
|
||||
* @version 1.6.1
|
||||
*/
|
||||
|
||||
/**
|
||||
* Class FilterASCIIHexDecode
|
||||
*/
|
||||
class FilterASCIIHexDecode
|
||||
{
|
||||
/**
|
||||
* Converts an ASCII hexadecimal encoded string into it's binary representation.
|
||||
*
|
||||
* @param string $data The input string
|
||||
* @return string
|
||||
*/
|
||||
public function decode($data)
|
||||
{
|
||||
$data = preg_replace('/[^0-9A-Fa-f]/', '', rtrim($data, '>'));
|
||||
if ((strlen($data) % 2) == 1) {
|
||||
$data .= '0';
|
||||
}
|
||||
|
||||
return pack('H*', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts a string into ASCII hexadecimal representation.
|
||||
*
|
||||
* @param string $data The input string
|
||||
* @param boolean $leaveEOD
|
||||
* @return string
|
||||
*/
|
||||
public function encode($data, $leaveEOD = false)
|
||||
{
|
||||
return current(unpack('H*', $data)) . ($leaveEOD ? '' : '>');
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user