Bonsoir,
Voila, je suis entrain de transposer un code C# en PHP, et une petite ligne me pose probleme;
En C#, voila comment ca se passe:
Code :
- for (int i=0; i<pw.Length; i++) {
- res[i*2] = (byte)(pw>>8);
- res[i*2+1] = (byte)(pw[i]);
- }
|
On remarque le >>8 car c'est un encodage "latin1_swedish", sur 2 octets. En PHP par defaut, les chars etant traités sur 1 octets, je dois d'abord effectuer un transtypage du caractere à priori ... Je procede donc comme suit:
Citation :
for ($i=0; $i<strlen($password); $i++) { $pw[$i] = mb_convert_encoding($pw[$i], "UTF-8", "ISO-8859-1" );
$res[$i*2] = ($pw[$i] >> 8);
$res[$i*2+1] = $pw[$i];
}
|
Seulement voila, la presence ou non de la fonction [i]mb_convert_encoding ne change absolument rien au resultat ... ce qui fait que $res[$i*2] est toujours égal à zero ... Aurais-je raté quelque chose quelque part ?