Получите тот же результат, что и CryptoJS.enc.Base64, используя PHP.Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Получите тот же результат, что и CryptoJS.enc.Base64, используя PHP.

Сообщение Anonymous »

У меня есть функция javascript, которую я пытаюсь преобразовать в PHP. Она использует библиотеку CryptoJS, в частности компоненты/enc-base64-min.js иrollups/md5.js. Их можно найти здесь.

В этом фрагменте кода

Код: Выделить всё

// Let's say str = 'hello';

var md5 = CryptoJS.MD5(str);
md5 = md5.toString(CryptoJS.enc.Base64);
// md5 outputs "XUFAKrxLKna5cZ2REBfFkg=="
Я предположил, что переменная str хешируется с использованием md5, а затем кодируется в Base64, поэтому я попробовал этот простой код

Код: Выделить всё

$md5 = md5($str);
$md5 = base64_encode($md5);
// md5 outputs "MmZjMGE0MzNiMjg4MDNlNWI5NzkwNzgyZTRkNzdmMjI="
Затем я попробовал проверить оба вывода, похоже, что вывод JS даже не является допустимой строкой Base64.

Чтобы понять дальше, я попытался найти параметр toString() из W3Schools, но для меня это не имеет смысла, поскольку согласно ссылке параметр должен быть целым числом (2, 8 или 16), тогда почему Вместо этого используется CryptoJS.enc.Base64?

Моя цель состоит не в том, чтобы создать действительную строку в кодировке Base64 с использованием JS, а в том, чтобы создать тот же результат, используя PHP.

Подробнее здесь: https://stackoverflow.com/questions/380 ... -using-php
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»