2009-07-25 41 views
27

tengo algunos códigos que tienen la \ x00 y \ x04códigos hexadecimales, ¿qué significa?¿Cuál es el significado de x00 x04 en PHP

$str= implode("\x00", $var['message']); //line 1 
$id= $var['message'] . "\x04" . $id; //line 2 

lo que sucederá en la línea 1 y línea 2 Quiero escribir éstos en un archivo externo como formato binario.

donde obtengo toda la información como esta.

Respuesta

49

\x indica la notación hexadecimal. Ver: PHP strings

Eche un vistazo a ASCII table para ver qué representan 0x00 y 0x04.

0x00 = NULL 
0x04 = EOT (End of transmission) 
7

\ x es una forma de indicar que los siguientes dos caracteres representan dígitos hexadecimales. Dos dígitos hexadecimales (cada uno de ellos 4 bits) forman un byte.

Si usted quiere saber lo que es la versión decimal, multiplicar el número izquierdo en un 16 y añadirlo a la cifra correcta, teniendo en cuenta que "a" es 10, "b" es 11, etc.

En otros lenguajes de programación, un signo de dólar o la secuencia 0x también se puede usar para marcar números hexadecimales.


Los números pueden representar cualquier cosa. A veces son códigos de control. Compruebe an ASCII table.

2

\ x04 es Fin de la transmisión en ASCII. Esto se mantiene en la mayoría de los lenguajes tipo C.

+0

Buen punto. Una tabla ASCII puede ser útil aquí. – Nosredna

+1

http://en.wikipedia.org/wiki/ASCII – Kawa

1

\xHH es una secuencia de escape que describe el byte con ese valor hexadecimal.

\x00 describe el byte con el valor 0, \x04 el byte con el valor 4. Tenga en cuenta que esta secuencia de escape solo se interpola en double quoted strings.

Cuestiones relacionadas