Есть js функция которая кодирует текст в base64, а затем смещает все символы.
function encode(text, key){
text = btoa(text);
var arr = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0"];
var bad = ['=', '/', '+'];
var str = '';
for(let i=0; i < text.length; i++){
if(bad.indexOf(text[i]) != -1 ) {
str += text[i]; continue;
}
arr.forEach(function (item, index) {
if(text[i] == item){
str += arr[(index + key)%arr.length];
}
});
}
return str;
}
encode("hello world!", 7);
//hNcziNEnk9F6iNXo
Как полученный результат можно декодировать при помощи php?