php - PHP - 使用 UTF-16 模式编码 base64
问题描述
我正在尝试使用 UTF-16 模式对 base64 中的字符串进行编码。
为了测试,我正在使用这个在线工具,效果很好,但我需要在 php 代码中使用它:
https://8gwifi.org/Base64Functions.jsp
设置配置: 编码 - 架构 UTF-16
此刻我尝试了这个:
$str = '/v8AVABoAGkAcwAgAGkAcwAgAGEAbgAgAGUAbgBjAG8AZABlAGQAIABzAHQAcgBpAG4AZw==';
$str = base64_decode($str);
$str = iconv("UTF-16", "ISO-8859-1", $str);
echo $str.PHP_EOL.PHP_EOL;
//$str = 'This is an encoded string';
$str = iconv("ISO-8859-1", "UTF-16", $str);
$str = base64_encode($str);
echo $str;
第一次转换效果很好。采用编码字符串,正确解码,一切正常。
但是反向转换会输出:
//5UAGgAaQBzACAAaQBzACAAYQBuACAAZQBuAGMAbwBkAGUAZAAgAHMAdAByAGkAbgBnAA==
女巫不一样。
非常感谢。
解决方案
/$str = '这是一个编码字符串';
加密和解密工作正常,没有 php 版本的任何外部支持
7.2.5
请试试
推荐阅读
- python - 为时间戳列创建 Bin
- vue.js - 如何影响插槽 vuejs 中的组件?
- python - 自定义 bash 函数不提供 python 多个参数
- java - 在 MariaDB 上使用 Hibernate 的 JPQL 更新查询出错
- python - 在列表中搜索终端输入并将匹配项存储到新列表中
- cuda - 使用 CUDA C/C++ 进行高斯图像模糊
- flutter - Flutter:如何在 Text 小部件中设置 maxLine
- django - Django ListView 分页设置
- bash - Maven 属性 - Windows 提示上的 Git Bash Shell 不是 UTF-8
- macos - 如果删除了如何重新安装apache服务器?