본문으로 건너뛰기
안형우

안녕하세요. 14년차 풀스택 웹개발자 안형우입니다. 이 블로그에서는 WordPress, PHP, CSS, 사용성, 리눅스 서버 등 풀스택 웹개발에서 마주하는 다양한 문제 상황과 해결책, 필요한 개념들을 다룹니다. 👉 소개


작업물

📌 CSS가 어려운 이유 — 프로젝트 중심 실전 CSS 강의 소개 2023-04-13
📌 워드프레스, 답답한 빌더와 플러그인 대신 시원하게 커스터마징하기(강의) 2023-01-15
📌 아무도 말하지 않는 PHP의 좋은 점 2018-10-13
📌 유지보수하기 쉬운 CSS 전략(슬라이드) 2016-12-20
📌 워드프레스 테마에서 템플릿 파일 매칭 순서 2013-05-12
📌 [번역] CSS 코드 냄새 2013-01-01

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이었던 것입니다.

안녕하세요. 14년차 풀스택 웹개발자 안형우입니다. 이 블로그에서는 WordPress, PHP, CSS, 사용성, 리눅스 서버 등 풀스택 웹개발에서 마주하는 다양한 문제 상황과 해결책, 필요한 개념들을 다룹니다. 👉 소개


작업물

Leave a Reply

Your email address will not be published. Required fields are marked *