Hola amigos del foro. En esta ocasión quisiera pedirles una colaboración. Estoy haciendo unas pruebas para enviar datos a través de un puerto COM1 y de momento me esta funcionando bien. Para eso estoy usando la clase php_serial_class. Por ejemplo para mandar el numero 255 lo que hago es lo siguiente.
Código PHP:
$numero="\xff";
$serial->sendMessage($numero);
donde \x le indica que es un numero hexa y ff corresponde a 255.
Ahora lo que deseo hacer es que el usuario pueda mandar este número escribiendolo directamente desde un textarea de un formulario. Pense que iba a ser muy sencillo pero como me estaba generando problemas lo hago de la siguiente forma para hacer pruebas.
Código PHP:
function dectohex($dec){//funcion para convertir de decimal a hexa para transmision
$code="\x".dechex($dec); //transforma el 255 a hexa y le coloco ademas el \x
return $code;
}
$decimal=255;
$hexa=dectohex($decimal);
echo $hexa."<br />";//me devuelve esto \xff
$hexa2="\xff";
echo $hexa2."<br />";//me devuelve esto ÿ
echo strcmp($hexa,$hexa2); // Como ven al no ser iguales da -1
Supongo que a la función que yo empleo le debo dar algun comando de consola o algo así para que me entienda que es un número hexadecimal pero no se como hacerlo o donde buscar. Le agradezco de antemano a la persona que me pueda ayudar a solucionar el problema. Muchas gracias por su colaboración.