Php base64编码然后解码失败

Php base64编码然后解码失败,php,android,mysql,Php,Android,Mysql,这是从我的android手机生成的base64编码笑脸,并保存到MySQL当我尝试在浏览器中显示它时,首先我需要检查字符串是否是base64编码的,然后我解码并打印它,但下面的代码无法显示 $mystring = "8J+YgPCfmInwn5iZ8J+YkPCflIfwn5Oi8J+OtfCfjqfwn5C18J+QiPCfpoTwn5CX8J+MjfCfl7vw\nn4+f8J+PofCfj4Himb/wn5uC8J+atA==\n"; if (base64_encode(base64_d

这是从我的android手机生成的
base64
编码笑脸,并保存到
MySQL
当我尝试在浏览器中显示它时,首先我需要检查字符串是否是
base64
编码的,然后我解码并打印它,但下面的代码无法显示

$mystring = "8J+YgPCfmInwn5iZ8J+YkPCflIfwn5Oi8J+OtfCfjqfwn5C18J+QiPCfpoTwn5CX8J+MjfCfl7vw\nn4+f8J+PofCfj4Himb/wn5uC8J+atA==\n";

if (base64_encode(base64_decode($mystring)) == $mystring) {
    echo base64_decode($mystring);
} else {
    echo  $mystring;
}
但如果我直接解码同一个字符串并打印出来,它就会工作

echo base64_decode($mystring);
// output 
if(base64_encode(base64_decode($mystring)) == $mystring)
echo base64_解码($mystring);
//输出
不能用这种方式比较两个字符串的内容

使用
strcmp()
函数

此外,如果$mystring是base64编码的,则不能以这种方式进行检查

当编码一个字符串时,您将始终得到true,然后解码结果将始终传递原始字符串


比较只会告诉你编码/解码是否有效。

但下面的代码无法告诉你哪些失败或出错。