Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PHP String hex2bin() Function



The PHP String hex2bin() function is used to decode a hexadecimal binary string. It translates a binary string encoded in hexadecimal format back to binary form. The purpose of this function is not to convert a hexadecimal integer to binary, for that, use PHP's base_convert() function. This function decodes a hexadecimal-encoded binary string.

Syntax

Below is the syntax of the PHP String hex2bin() function −

string hex2bin ( string $string )

Parameters

This function accepts $string parameter which is a hexadecimal representation of data.

Return Value

The hex2bin() function returns the binary representation of the given data or FALSE on failure.

PHP Version

First introduced in core PHP 5.4.0, the hex2bin() function continues to function easily in PHP 7, and PHP 8.

Error/Exception

If the hexadecimal input string is odd in length or incorrect an E_WARNING level error is generated.

Example 1

First we will show you the basic example of the PHP String hex2bin() function to decode the hexadecimal binary string.

<?php
   // define a string here
   $string = '48656c6c6f20576f726c6421';
   
   // Use hex2bin function here
   echo hex2bin($string);
?>

Output

Here is the outcome of the following code −

Hello World!

Example 2

In this program we are going to use the hex2bin() function and check that the given input string is a valid hexadecimal string before converting it to a normal string. Here we are using ctype_xdigit() function which is used to check that all the characters in the given string are valid hexadecimal digits or not.

<?php
   // Invalid hex string (contains 'Z')
   $string = "48656c6c6fZ"; 
   
   if (ctype_xdigit($string)) {
       $binaryData = hex2bin($string);
       echo "Binary data: " . $binaryData;
   } else {
       echo "Invalid hexadecimal string!";
   }
?> 

Output

This will generate the below output −

Invalid hexadecimal string!

Example 3

Now in the below code we will check if there is an invalid length of string is given so how we need to handle it using thr hex2bin() function.

<?php
   // Invalid length 
   $string = "123"; 
   
   // Suppresses warnings
   $binaryData = @hex2bin($string); 
   if ($binaryData === false) {
       echo "Conversion failed: Invalid hexadecimal input.";
   } else {
       echo "Binary data: " . $binaryData;
   }
?> 

Output

This will create the below output −

Conversion failed: Invalid hexadecimal input.

Example 4

Here is one more example to show the usage of the hex2bin() function.

<?php
   $hex = hex2bin("43480170");
   var_dump($hex);
?>

Output

This will produce following result − −

string(4) "CHp"
php_function_reference.htm
Advertisements