I can't get the php to convert audio data to nicely formed binary wav
format. For instance, in perl you simply do a
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
and you're done with it.
In php, there are two problems:
1. no existence of a handy builtin hex2bin() function (though many have been
written, such as
function hex2bin($hex_str)
for ($i = 0; $i < strlen($hex_str); $i += 2)
$bin_str .= chr(hexdec(substr($hex_str, $i, 2)));
}
return $bin_str;
}
which seems to get the case done,
2. But the real problem is that doing a straight hex2bin conversion is not
what that beautiful little perl script does. The part that confuses me is
the hash oriented piece /%([a-fA-F0-9][a-fA-F0-9])/ -- what exactly is it
doing? Is it just stepping through the string two characters at a time and
comparing them? Or is it doing something more ambitious and arcane that I'm
not really grasping. I tried to emulate it with the following php
workaround, but come up short...
for ($i = 0; $i < strlen($hex_str); $i += 2)
$newdata =.
preg_replace("/[a-fA-F0-9][a-fA-F0-9]/",pack("C",hexdec(substr($hex_str, $i,
2))),$hex_str);
}
Any help?
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]