Home »
PHP »
PHP Programs
PHP | convert hexadecimal string to string using pack() function
Convert hexadecimal string to hex in PHP: Here, we are going to learn how to convert a given hexadecimal string to the string?
By IncludeHelp Last updated : December 27, 2023
Prerequisites
To understand this example, you should have the basic knowledge of the following PHP topics:
Problem statement
Given hexadecimal string and we have to convert it into string of ASCII characters.
Converting hexadecimal string to string using pack() function
To convert a hex string to the string of ASCII characters, we can use pack() function with the format "H*" it represents that source string is in hexadecimal format.
Syntax
pack("H*", hex_string);
Example
Input: "48656c6c6f20776f726c64"
Output: "Hello world"
Input: "4142432031323320402324252e2058595a"
Output: "ABC 123 @#$%. XYZ"
PHP Code
<?php
$str = "Hello world";
$hex_str = bin2hex($str);
$str1 = pack("H*", $hex_str);
//printing both strings
echo ("str = " . $str . "\n");
echo ("hex_str = " . $hex_str . "\n");
echo ("str1 = " . $str1 . "\n");
$str = "ABC 123 @#$%. XYZ";
$hex_str = bin2hex($str);
$str1 = pack("H*", $hex_str);
//printing both strings
echo ("str = " . $str . "\n");
echo ("hex_str = " . $hex_str . "\n");
echo ("str1 = " . $str1 . "\n");
?>
Output
str = Hello world
hex_str = 48656c6c6f20776f726c64
str1 = Hello world
str = ABC 123 @#$%. XYZ
hex_str = 4142432031323320402324252e2058595a
str1 = ABC 123 @#$%. XYZ