>백엔드 개발 >PHP 문제 >PHP base64 인코딩 후 잘못된 문자를 디코딩하면 어떻게 해야 합니까?

PHP base64 인코딩 후 잘못된 문자를 디코딩하면 어떻게 해야 합니까?

coldplay.xixi
coldplay.xixi원래의
2020-07-13 09:27:205614검색

PHP base64 인코딩 후 잘못된 문자 디코딩에 대한 해결 방법: GET 형식으로 전달할 때 [+] 기호가 공백으로 바뀌지 않도록 하세요. 코드는 [$str = base64_decode(str_replace(" ","+", $_GET[ 'str']))].

PHP base64 인코딩 후 잘못된 문자를 디코딩하면 어떻게 해야 합니까?

PHP base64 인코딩 후 잘못된 문자를 디코딩하는 솔루션:

때때로 base64_encode를 사용하여 암호화한 다음 GET 형식으로 다른 페이지에 전송하고, base64_decode를 사용하세요. code>암호를 해독할 때 왜곡된 문자가 나타납니다. <code>base64_encode加密后,以GET的形式传到其他页面,用base64_decode解密的时候,出现乱码。

遇到这个问题的时候,我就纳闷了,为什么有一些能正确解密,但是有一些却出现乱码呢?

后来经过检查,发现有一些中文字符,GET形式传过来的时候,+이 문제가 발생했을 때 왜 일부는 올바르게 해독 될 수 있지만 일부는 왜곡되어 있는지 궁금합니다.

나중에 확인해보니 일부 한자가 발견되었습니다.

형식이 통과되면 GET를 사용하세요. , + 기호는 공백

으로 대체됩니다.

문자 깨짐을 방지하기 위해 교체 단계를 만든 후 복호화했습니다. 물론 문자 깨짐 문제는 더 이상 존재하지 않습니다!

이제 문제는 매우 간단합니다. 한 단계만 더 작성하면 됩니다

$str = base64_decode(str_replace(" ","+",$_GET[&#39;str&#39;]));

관련 학습 권장사항: 🎜초보부터 마스터까지 PHP 프로그래밍🎜🎜🎜

위 내용은 PHP base64 인코딩 후 잘못된 문자를 디코딩하면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.