GB18030和UTF-8有啥区别
GB18030和UTF-8的区别有:1、GB18030和UTF-8是不同的字符表示方式;2、GB18030是中国制定的标准,UTF-8是国际上的组织制定的标准;3、GB18030是中文字符集,UTF-8是万国码。
GB18030和UTF-8有啥区别?
GB18030 是中国的标准,国标(GB),就是如何表示一个字符。Unicode只给出了一个字符的编号,并没有规定如何表示(或者说保存),UTF-8规定了如何表示。所以说,GB18030 和 unicode+utf-8 是不同的字符表示方式,一个是中国制定的标准,一个是国际上的组织制定的标准。
计算机被发明的时候,人们认为不会像现在这么流行,所以包括控制字符在内人们只定义了包括控制字符在内的128种符号,这就是 ASCII。
后来计算机流行到非英语国家,那么他们有自己的语言需要计算机显示。由于ASCII符号只有128个,而计算机一个字节有8位,所以还有128个冗余,于是他们用剩余的128个冗余表示他们自己国家的文字。不同的国家把这128个(其实是95个)定义成不同的字符,分别叫做ISO8859-1(Latin-1),ISO8859-2(Latin-2).....ISO8859-16(Latin-10)。额,中间有一部分不叫 Latin(好坑人呀)
但是在东亚,就说中国吧,128个显然表示不了所有的汉字。所以就只能用两个字节表示一个汉字。于是规定,原始的 ASCII 还是用一个字节表示,使用连续两个字节(这两个字节值都大于128)表示一个汉字。一共可以表示128×128=16384个汉字(实际没有那么多),叫做 GB2312。后来人们发现自己太傻,其实第一个字节大于128的话,我们用连续两个字节表示一个汉字也不会出现歧义,所以规定,如果当前字节小于128那么就是标准的 ASCII,如果当前字节大于128就用当前字节和后面那个字节表示一个汉字,所以可以表示(128×256=32768)个汉字,然后补充了一部分汉字,叫做 GBK。在此基础上又增加了一部分汉字,这个版本叫做 GB18030。(东亚标准里还有BIG5和CJK的故事)。
不同的国家有不同的标准,所以当大家交流的时候就不方便了。所以出现了两个组织(忘记具体叫什么了),开始着手统一全部的字符集(后来其中一个组织觉得另一个组织做就好了,主动退出了),叫做 Unicode。
但是 Unicode 只规定了一个字符的编号,并没有规定具体怎么表示。比如 A 编号65,具体表示的时候可以用一个字节 0x41 表示,可以用两个字节表示 0x00 0x41,或者用四个字节表示 0x00 0x00 0x00 0x41,而且多个字节表示的话还有谁在前的问题。所以在 unicode 表示上出现了不同的标准。UTF-8 就是一种表示的标准(终于说到UTF-8了),不过具体怎么表示就有点儿复杂了,是一种变长编码,有些字符用一个字节(兼容ASCII,这就是为什么UTF-8比较流行)有些用两个有些三个。。。随便百度了一个表示方式,就是把一个如何把一个数字转成几个字节表示。
扩展:还有两种标准 UTF-16,UTF-32,UTF-16统一个用两个字节或是四个字节表示一个字符(java,javascript里就是这种编码,这其中还有USC定长编码的故事),UTF-32统一用4个字节,所以都不兼容ASCII。既然是多字节,就涉及字节顺序的问题。。。。
非常同意 @zonxin 不过我想说:
珍爱生命,远离GBK/GB2312 (当然有点偏激, 但爷就这么说了!)
当然utf8问题,微软又整出个utf8 with bom 和 utf8 without bom,马 丹啊当个程序员,容易吗!
前者是中文字符集,后者是万国码,完全不同的字符集编码!笔者建议好好了解一下字符编码,可以参考一下这篇文章,字符编码详解
前者是字符集,相当于“都说些啥”,后者是编码方式,相当于“该咋说”。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











종종 키워드와 추적 매개 변수로 혼란스러워하는 긴 URL은 방문자를 방해 할 수 있습니다. URL 단축 스크립트는 솔루션을 제공하여 소셜 미디어 및 기타 플랫폼에 이상적인 간결한 링크를 만듭니다. 이 스크립트는 개별 웹 사이트 a에 유용합니다

Instagram은 2012 년 Facebook에서 유명한 인수에 이어 타사 사용을 위해 두 개의 API 세트를 채택했습니다. Instagram Graph API 및 Instagram Basic Display API입니다. 개발자는

Laravel은 직관적 인 플래시 방법을 사용하여 임시 세션 데이터 처리를 단순화합니다. 응용 프로그램에 간단한 메시지, 경고 또는 알림을 표시하는 데 적합합니다. 데이터는 기본적으로 후속 요청에만 지속됩니다. $ 요청-

이것은 Laravel 백엔드가있는 React Application을 구축하는 데있어 시리즈의 두 번째이자 마지막 부분입니다. 이 시리즈의 첫 번째 부분에서는 기본 제품 목록 응용 프로그램을 위해 Laravel을 사용하여 편안한 API를 만들었습니다. 이 튜토리얼에서는 Dev가 될 것입니다

Laravel은 간결한 HTTP 응답 시뮬레이션 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다. 기본 구현은 다양한 응답 유형 단축키를 제공합니다. Illuminate \ support \ Facades \ http를 사용하십시오. http :: 가짜 ([ 'google.com'=> 'Hello World', 'github.com'=> [ 'foo'=> 'bar'], 'forge.laravel.com'=>

PHP 클라이언트 URL (CURL) 확장자는 개발자를위한 강력한 도구이며 원격 서버 및 REST API와의 원활한 상호 작용을 가능하게합니다. PHP CURL은 존경받는 다중 프로모토콜 파일 전송 라이브러리 인 Libcurl을 활용하여 효율적인 execu를 용이하게합니다.

고객의 가장 긴급한 문제에 실시간 인스턴트 솔루션을 제공하고 싶습니까? 라이브 채팅을 통해 고객과 실시간 대화를 나누고 문제를 즉시 해결할 수 있습니다. 그것은 당신이 당신의 관습에 더 빠른 서비스를 제공 할 수 있도록합니다.

2025 PHP Landscape Survey는 현재 PHP 개발 동향을 조사합니다. 개발자와 비즈니스에 대한 통찰력을 제공하는 프레임 워크 사용, 배포 방법 및 과제를 탐색합니다. 이 조사는 현대 PHP Versio의 성장을 예상합니다
