downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

html_entity_decode> <hebrevc
[edit] Last updated: Fri, 24 May 2013

view this page in

hex2bin

(PHP >= 5.4.0)

hex2binDecodifica una cadena binaria codificada hexadecimalmente

Descripción

string hex2bin ( string $data )

Decodifica una cadena binaria codificada hexadecimalmente.

Precaución

Esta función NO convierte un número hexadecimal en un número binario. Esto se puede realizar usando la función base_convert().

Parámetros

data

La representación hexadecimal de datos.

Valores devueltos

Devuelve la representación binaria de los datos dados o FALSE en caso de error.

Errores/Excepciones

Si la cadena de entrada hexadecimal tiene una longitud impar se emite un error de nivel E_WARNING.

Historial de cambios

Versión Descripción
5.4.1 Se emite una advertencia si la cadena de entrada tiene una longitud impar. En PHP 5.4.0 la cadena era aceptada de forma silenciosa, pero el último byte era truncado.

Ejemplos

Ejemplo #1 Ejemplo de hex2bin()

<?php
$hex 
hex2bin("6578616d706c65206865782064617461");
var_dump($hex);
?>

El resultado del ejemplo sería algo similar a:

string(16) "example hex data"

Ver también

  • bin2hex() - Convierte datos binarios en su representación hexadecimal
  • unpack() - Desempaqueta datos de una cadena binaria



html_entity_decode> <hebrevc
[edit] Last updated: Fri, 24 May 2013
 
add a note add a note User Contributed Notes hex2bin - [4 notes]
up
4
Anonymous
1 year ago
The function hex2bin does not exist in PHP5.
You can use 'pack' instead :

$binary_string = pack("H*" , $hex_string);
up
1
Johnson
4 months ago
For those who have php version prior to 5.4, i have a solution to convert hex to binary. It works for me in an encryption and decryption application.

<?php
       
function hextobin($hexstr)
    {
       
$n = strlen($hexstr);
       
$sbin="";  
       
$i=0;
        while(
$i<$n)
        {      
           
$a =substr($hexstr,$i,2);          
           
$c = pack("H*",$a);
            if (
$i==0){$sbin=$c;}
            else {
$sbin.=$c;}
           
$i+=2;
        }
        return
$sbin;
    }
?>
up
0
jarismar dot php at gmail dot com
5 months ago
A way to convert hex strings in the form "0x123ABC" to integer is to use the function base_convert("0x123ABC", 16, 10)
up
0
Anonymous
1 year ago
The function pack("H*" , $hex_string); will not work as expected if $hex_string contains an odd number of hexadecimal digits.

For example:

<?php echo ord(pack("H*", 'F')); ?>

will return 240 not 15. Use pack("H*", '0F'); instead.

 
show source | credits | sitemap | contact | advertising | mirror sites