public static String convertHexString(String hex){
byte[] bytes = new byte[hex.length() / 2];
for (int i = 0; i < bytes.length; i++) {
bytes[i] = (byte) Integer.parseInt(hex.substring(2 * i,2 * i + 2), 16);
}
sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder();
System.out.println(encoder.encode(bytes));
return encoder.encode(bytes);
}
上面是用java编写的函数,我想把它转换成php函数。
此函数接受HEX字符串作为参数。
基本上我想将一个字符串从十六进制转换为字符串。
字符串应为二进制。
请有人帮助我。
提前致谢 :)
答案 0 :(得分:4)
这只是一个问题:
base64_encode(pack("H*", $string));
具有H*
参数的 pack
将具有十六进制数字的任意长度字符串(每组两个数字表示一个字节,第一个更重要)转换为二进制字符串。另请参阅base64_encode
。
答案 1 :(得分:1)