Hola a todos!!
Tengo una gran duda, y no se en que le estoy pifiando: tengo una pequeña función que traduce un string HEXA y lo convierte en su respectivo formato ASCII.
Código PHP:
function hex2str($hex) {
for($i=0;$i<strlen($hex);$i+=2)
$str .= chr(hexdec(substr($hex,$i,2)));
return $str;
}
$cadenahexa = "484f4c41204d49204e4f4d425245204553204d4155524f"
hex2str($cadenahexa);
echo $cadenahexa;
De esta manera, usando la funcion al aire funciona perfectamente. En el ultimo "echo" logra que se vea la cadena traducida:
HOLA MI NOMBRE ES MAURO
Ahora, cuando intento pasar esta función a una clase:
Chardec.php :
Código PHP:
class Chardec {
public $hex;
public function hextostr($hex) {
for($i=0;$i<strlen($this->hex);$i+=2)
$str .= chr(hexdec(substr($this->hex,$i,2)));
return $str;
}
}
index.php :
Código PHP:
include 'Chardec.php';
$dato = "484f4c41204d49204e4f4d425245204553204d4155524f";
$string = new Chardec();
echo $string->hex2str($dato);
echo "<pre>";
print_r($string);
echo "</pre>";
No me devuelve nada...
Chardec Object
(
[hex] =>
)
Alguna idea en qué le estoy errando??
Muchas gracias