PHP의 문자열 처리 함수에 mb_ 접두어가 붙은 이유

,

PHP 문자열 처리 함수중에는 mb_로 시작하는 것들이 있습니다. 이명박 시절에 개발을 처음 시작한 저는 mb라고 하면 자꾸 대통령이 연상됐더랬습니다.

사실 PHP 문자열 처리 함수의 접두어 mb_는 멀티바이트의 약자입니다.

PHP는 95년에 출시된 언어고 UTF-8이 인터넷 RFC로 채택된 것은 98년의 일입니다(스펙이 나온 건 93년이지만요).

PHP에 mb_ 접두어 함수들이 등장한 것은 2001년 PHP 4.0.6과 함께였던 것 같습니다. 기록을 보면 일본어 멀티바이트 문자열 관련 함수 지원을 추가하면서 시작된 것 같습니다.

1바이트로 표현할 수 있는 문자의 수는 256개(2의 8제곱)입니다. 알파벳과 특수문자를 넣으면 끝나는 공간입니다.

PHP의 문자열 처리 기본 함수들은 멀티 바이트 문자들의 시작과 끝을 제대로 처리하지 못했습니다. 문자가 1바이트일 것이라고 가정했으니까요.

그래서 하위호환성을 유지하면서도 새로운 멀티바이트 문자에 대응할 수 있도록 mb_라는 접두어를 붙인 함수를 추가한 것이죠.

멀티바이트 문자가 그래서 등장했고, 승자는 가장 효율적으로 많은 수의 문자를 표현할 수 있는 UTF-8이었던 것입니다.

👇 카테고리 글 목록

,

대표글

댓글 남기기