par
Genova » 26 juil. 2007, 14:04
Bonjour, j'ai pas trouvé de fonction dans la doc PHP permettant de faire du binaire depuis une chaîne de caractère (étonnant, ou bien j'ai mal cherché).
Je t'ai fait des fonctions qui font ce boulot :
<?php
// Converti une string en binaire
function str2bin($str)
{
$bin = '';
$length = strlen($str);
for ($i = 0; $i < $length; $i++)
{
// On converti le code ASCII du char en binaire
$convert = decbin(ord($str[$i]));
// On complète avec les 0 pour faire 1 octet
$convert = strrev(str_pad(strrev($convert), 8, '0'));
$bin .= $convert;
}
return ($bin);
}
// Converti du binaire en string
function bin2str($bin)
{
$str = '';
$split = str_split($bin, 8);
$count = count($split);
for ($i = 0; $i < $count; $i++)
{
$str .= chr(bindec($split[$i]));
}
return ($str);
}
$str = 'salut';
$bin = str2bin($str);
echo "STR=$str<br />BIN=$bin<br />";
$str = bin2str($bin);
echo "STR=$str<br />";
?>
Bonjour, j'ai pas trouvé de fonction dans la doc PHP permettant de faire du binaire depuis une chaîne de caractère (étonnant, ou bien j'ai mal cherché).
Je t'ai fait des fonctions qui font ce boulot :
[php]<?php
// Converti une string en binaire
function str2bin($str)
{
$bin = '';
$length = strlen($str);
for ($i = 0; $i < $length; $i++)
{
// On converti le code ASCII du char en binaire
$convert = decbin(ord($str[$i]));
// On complète avec les 0 pour faire 1 octet
$convert = strrev(str_pad(strrev($convert), 8, '0'));
$bin .= $convert;
}
return ($bin);
}
// Converti du binaire en string
function bin2str($bin)
{
$str = '';
$split = str_split($bin, 8);
$count = count($split);
for ($i = 0; $i < $count; $i++)
{
$str .= chr(bindec($split[$i]));
}
return ($str);
}
$str = 'salut';
$bin = str2bin($str);
echo "STR=$str<br />BIN=$bin<br />";
$str = bin2str($bin);
echo "STR=$str<br />";
?>[/php]