PHP에는 애플리케이션 요구 사항을 지원하는 수많은 기능이 있습니다. 아래에 소개하는 함수는 PHP 인코딩 변환 함수에 관한 것입니다. 그것이 모두에게 도움이 되기를 바랍니다. mb_convert_encoding 함수는 PHP의 내부 멀티바이트 문자열 인코딩 변환 함수입니다.
GB2312 인코딩 환경에서 Ajax를 사용하여 발생하는 한자 깨짐 문제 해결 등 필요한 상황에서 인코딩 변환을 용이하게 하여 웹 페이지 깨짐 문제를 해결하는 데 사용할 수 있어 매우 편리합니다. 효율적입니다. 거의 모든 인코딩이 지원됩니다. PHP 4 >= 4.0.6, PHP 5 버전이 지원됩니다.
PHP 인코딩 변환 함수 프로토타입:
/**
* 멀티바이트 문자열 인코딩 변환 기능
*
* @param string str 인코딩 및 변환이 필요한 문자열
* @param string to_encoding은 특정 인코딩으로의 변환을 지정합니다
, 예: gb2312, gbk, utf-8 등
* @param mix from_encoding 지정된 원래 문자열의 인코딩을 혼합합니다
, 예: JIS, eucjp-win, sjis-win 혼합 인코딩을 동시에 지정
* @return 문자열
문자열 mb_convert_encoding ( 문자열 str, 문자열 to_encoding [, 혼합 from_encoding] )
PHP 인코딩 변환 기능 사용 예:
1. GBK 인코딩 문자열을 UTF-8 인코딩 문자열로 변환
< ?PHP header("content-Type: text/html; charset=Utf-8"); echo mb_convert_encoding(" 你是我的好朋友", "UTF-8", "GBK"); ?>
2. UTF-8로 인코딩된 문자열을 GB2312로 인코딩된 문자열로 변환
// 注意将此文件存盘成 utf-8 编码格式文件再测试 < ?PHP header("content-Type: text/html; charset=gb2312"); echo mb_convert_encoding(" 你是我的好朋友", "gb312", "utf-8"); ?>
3. 전체 페이지 변환
이 방법은 모든 코딩 환경에 적합합니다. 이러한 방식으로 처음 128자(표시 문자)를 제외한 모든 문자 세트는 NCR로 표시됩니다("한자"와 같은 숫자 문자 참조는 "한자"로 변환됨). 이 인코딩은 모든 인코딩에서 사용될 수 있습니다. 환경을 정상적으로 표시합니다.
PHP 파일의 헤드에 다음 세 줄의 코드를 추가합니다.
mb_internal_encoding("gb2312"); // 这里的gb2312是你网站原来的编码 mb_http_output("HTML-ENTITIES"); ob_start('mb_output_handler');
mb_convert_encoding 함수를 사용하려면 PHP의 mbstring(멀티바이트 문자열) 확장을 활성화해야 합니다.
PHP의 mbstring 확장이 활성화되지 않은 경우, PHP가 확장을 지원할 수 있도록 다음 설정을 지정해야 합니다.
1. 윈도우 서버 환경
PHP.ini 파일을 편집하고 Extension=PHP_mbstring.dll 앞의 ;를 제거한 후 웹 서버를 다시 시작하세요.
2. 리눅스 서버 환경
구성을 컴파일할 때 --enable-mbstring=cn 컴파일 매개변수를 추가한 다음 PHP를 컴파일하고 설치하세요.
결론:
PHP 인코딩 변환 기능을 사용하는데 아직도 이해가 되지 않는다면 "PHP 매뉴얼"을 참고하시기 바랍니다.