새소식

Php

[PHP] base64_encode 란

  • -
728x90

base64_encode 란 ?

base64_encode — Encodes data with MIME base64

 

 

PHP: base64_encode - Manual

You can escape '+', '/' and '=' symbols using two simple functions: $value)            if($m[$i + 1])                return $value;    }, $id);    return base64_decode($id);}?>this functions escapes symbol 'A' as 'AA', '+' as 'AB', '/' as

www.php.net

 

MIME base64로 데이터를 인코딩, 공식 문서에 나와있는 내용이다.

모든 정보를 64개 문자로 구성된 64진수로 바꾸는 것으로 a-z, A-Z, 0-9, +, / 의 문자이며 암호화 방식과 는 거리가 멀고, 원 데이터보다 약 33% 더 많은 공간을 필요로 한다.

 

정리하면 Binary Data를 Text로 변경하는 인코딩이다. 이메일을 주고 받거나 홈페이지에 파일을 업로드 할 때, 문제가 없도록 하기 위해서 본래 내용을 64개의 문자로만 구성된 문장으로 변환한다는 의미이다.

 

64개 문자는 = 가 포함한 문자인데, =는 단순히 4자리 수를 맞춰줄 빈 공간을 채우는 의미없는 문자이므로

신경쓰지 않아도 된다.

 

다만, GET 이나 Request 로 Parameter를 전송시 '+' , '/' 문자가 문제시 되므로 urlencode 로 데이터를 보호하거나 치환해서 데이터를 보호해 줄 필요가 있다.

 

base64_encode(string $string) : string

$str = "base64_decode";
$str = base64_encode($str);

------------------------------
"YmFzZTY0X2VuY29kZQ==""

 

base64_decode(string $string) : string

$str = "YmFzZTY0X2VuY29kZQ==";
$str = base64_decode($str);

------------------------------
"base64_encode"

 

728x90

'Php' 카테고리의 다른 글

[PHP] header 란 ?  (0) 2023.01.04
[Laravel] Cookie's domain  (0) 2023.01.03
[PHP] 자주쓰는 메서드 정리  (0) 2022.06.21
[PHP] crontab  (0) 2022.06.20
[Laravel] DB 수정 내역 배포  (0) 2022.01.06
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.