Bonjour,
Je voudrais convertir une chaîne quelconque en binaire. Si c'est possible, je voudrais aussi que cette chaîne puisse ne pas forcément être composée de caractères ASCII, afin de généraliser au maximum.
Merci beaucoup pour votre aide.
Version imprimable
Bonjour,
Je voudrais convertir une chaîne quelconque en binaire. Si c'est possible, je voudrais aussi que cette chaîne puisse ne pas forcément être composée de caractères ASCII, afin de généraliser au maximum.
Merci beaucoup pour votre aide.
regarde la fonction http://php.net/ord pour convertir un caractère en nombre et ensuite la fonction http://php.net/decbin pour convertir ce nombre en binaire
Merci Mathieu pr l'info. En m'instruisant d'avantage et en Googlant, j'ai trouvé un jeu de ces fonctions imbriquées dont voici le code :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 <?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 />"; ?>