Oto mój kod:

static function CreateHash($password) {
    $upass = mb_convert_encoding($password,'UCS-2LE','auto');

    // note I have tried calling the following function to get the 
    // encoding type of $password and it returns ASCII
    // $encoding = mb_detect_encoding($password);
}

Jeśli zadzwonię do powyższej funkcji z $ hasło = "abc123!", mb_convert_encoding zwraca false.

0
Hooman Bahreini 16 październik 2020, 06:43

1 odpowiedź

Najlepsza odpowiedź

Według Manual PHP

"Auto" jest rozszerzony do "ASCII, JIS, UTF-8, EUC-JP, SJIS"

Ale w moim przypadku nie działał poprawnie. Jeśli spróbuję następujący kod zamiast 'auto', otrzymuję oczekiwany wynik:

$upass = mb_convert_encoding($password, 'UCS-2LE', "ASCII,JIS,UTF-8,EUC-JP,SJIS");
0
Hooman Bahreini 16 październik 2020, 04:48