>백엔드 개발 >PHP 문제 >PHP에서 문자열을 utf8 형식으로 변환하는 방법

PHP에서 문자열을 utf8 형식으로 변환하는 방법

醉折花枝作酒筹
醉折花枝作酒筹원래의
2021-04-02 10:59:313080검색

방법: 1. iconv 함수 사용, "iconv(원래 문자 유형, 'UTF-8', 문자열)" 구문 2. mb_convert_encoding 함수 사용, 구문 "mb_convert_encoding(string, 'UTF-8', 원래 문자 유형) ".

PHP에서 문자열을 utf8 형식으로 변환하는 방법

이 문서의 운영 환경: windows7 시스템, PHP7.1 버전, DELL G3 컴퓨터

1 iconv() 함수를 사용하세요
iconv 함수는 알려진 문자 세트 파일을 알려진 다른 문자 세트 파일로 변환합니다. 예: GB2312에서 UTF-8로 변환합니다. iconv는 "-" 문자를 "gb2312"로 변환할 때 오류를 발생시킵니다. 해결 방법은 변환해야 하는 인코딩 뒤에 "//IGNORE"를 추가하는 것입니다. 이것은 iconv 함수입니다. 두 번째 매개변수입니다. 다음과 같습니다. iconv函数可以将一种已知的字符集文件转换成另一种已知的字符集文件。例如:从GB2312转换为UTF-8。iconv在转换字符”—”到“gb2312”时会出错,解决方法是在需要转成的编码后加 “//IGNORE”,也就是iconv函数第二个参数。如下:

 iconv("UTF-8", "GB2312//IGNORE", $data)

ignore的意思是忽略转换时的错误,如果没有ignore参数,所有该字符后面的字符串都无法被保存。

 <?php 
  echo $str= ‘你好,这里是卖咖啡!&#39;; 
  echo &#39;<br />&#39;; 
  echo iconv(&#39;GB2312&#39;, &#39;UTF-8&#39;, $str); //将字符串的编码从GB2312转到UTF-8 
?>

二、使用“mb_convert_encoding”将字符串转换成UTF8字符集

在使用mb_convert_encoding时要先知道字符编码,如果编码错误就会乱码,使用mb_detect_encoding

<?php
    $encode = mb_detect_encoding($str, array("ASCII",&#39;UTF-8&#39;,"GB2312","GBK",&#39;BIG5&#39;,&#39;LATIN1&#39;));
    if($encode != &#39;UTF-8&#39;){
    $name = mb_convert_encoding($name, &#39;UTF-8&#39;, $encode);
  }
?>

ignore는 변환 중 오류를 무시한다는 의미입니다. ignore 매개변수가 없으면 이 문자 뒤에 오는 모든 문자열을 저장할 수 없습니다.

rrreee2. 문자열을 UTF8 문자 집합으로 변환하려면 "mb_convert_encoding"을 사용하세요.

🎜🎜mb_convert_encoding을 사용할 때는 먼저 문자 인코딩을 알아야 합니다. mb_Detect_encoding 을 사용하여 문자열 인코딩을 자동으로 식별하고 이를 국제 표준 인코딩 UTF-8 인코딩으로 변환합니다. 🎜rrreee🎜추천 튜토리얼: 🎜php 비디오 튜토리얼🎜🎜

위 내용은 PHP에서 문자열을 utf8 형식으로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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