Dou*_*gal 27 php mysql base64 whitespace encoding
base64编码的字符串可能包含空格吗?具体来说,它可以包含字符串末尾的空格吗?
PS.我在考虑整个"MySQL将在VARCHAR字段中存储字符串时修剪尾随空格"这里;-)
Ste*_*rig 20
不,它不能.见Base64编码通过使用允许的字符库base64,这是人物A-Z,a-z,0-9,+和/(最后两个可能因实施不同),以及填充字符=(不过这也取决于实现一些实现不使用填充在所有).
Gav*_*son 14
它不应该,但它可能会这样做.
有效的base64字符串不应包含空格,因为编码字母表应仅包含AZ az 0-9 + /
但是,如果编码数据恰好包含"+"字符,并且数据在URL中传递,则可能会无意中将其转换为空格.所以你可能会遇到一个假定的base64字符串,在这种情况下它似乎有空格.
如果是这种情况,只需在解码前用加号替换空格.
PS.我在考虑整个"MySQL将在VARCHAR字段中存储字符串时修剪尾随空格"
另外,从MySQL 5.0.3开始,varchar的尾随空格不会被随意剥离