Heim Backend-Entwicklung PHP-Tutorial 记php和java中英文字节长度和编码关系

记php和java中英文字节长度和编码关系

Jul 29, 2016 am 08:56 AM
length quot str unicode

1.PHP

PHP其实跟C语言一样,采用ASCII,一个char占1个字节,在GBK编码,一个英文占1个字节,一个中文占2个字节。然而在UTF-8编码下,一个英文还是占1个字节,但一个中文是占3-4个字节(一般都是3个字节),这通常会给你获取字符串的字长或者字符串截取带来麻烦。比如:

<?php $str = "我爱你Iloveyou";
echo strlen($str); //utf8下是17,GBK下是14,但如果问你$str的字长是多少,或者让你显示前6个字,其余省略号表示,怎么办?
?>
Nach dem Login kopieren

以上的问题网上可以找到答案,最简单就是使用扩展库,用mb_substr函数来截取。

2.Java

java中的一个char是2个字节。java采用unicode,2个字节来表示一个字符,一个中文或英文字符的unicode编码都占2个字节,但如果采用其他编码方式,一个字符占用的字节数则各不相同。例如:

public class Test {
    public static void main(String[] args){
        String str = "我们aaaaa";
        int byte_len = str.getBytes().length;
        int len = str.length();
        System.out.println("字节长度为:" + byte_len);
        System.out.println("字符长度为:" + len);
    }
}
Nach dem Login kopieren

以上例子,在GBK输出结果是:9和7,但在UTF-8下输出结果是:11和7,即无论用什么编码,用str.length()获取的字长都是一致的。该方法返回的是字符串的字符数,无论是中文字符还是英文字符,都被看做是一个字符。

以上就介绍了记php和java中英文字节长度和编码关系,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Vertiefendes Verständnis von PHP: Implementierungsmethode zur Konvertierung von JSON Unicode in Chinesisch Vertiefendes Verständnis von PHP: Implementierungsmethode zur Konvertierung von JSON Unicode in Chinesisch Mar 05, 2024 pm 02:48 PM

Vertiefendes Verständnis von PHP: Implementierungsmethode zum Konvertieren von JSONUnicode in Chinesisch Während der Entwicklung stoßen wir häufig auf Situationen, in denen wir JSON-Daten verarbeiten müssen, und die Unicode-Codierung in JSON verursacht in einigen Szenarien einige Probleme, insbesondere wenn Unicode konvertiert werden muss Bei der Kodierung wird in chinesische Zeichen konvertiert. In PHP gibt es einige Methoden, die uns bei der Umsetzung dieses Konvertierungsprozesses helfen können. Im Folgenden wird eine allgemeine Methode vorgestellt und es werden spezifische Codebeispiele bereitgestellt. Lassen Sie uns zunächst das Un in JSON verstehen

So konvertieren Sie Unicode in Chinesisch So konvertieren Sie Unicode in Chinesisch Dec 14, 2023 am 10:57 AM

Unicode ist ein Zeichenkodierungsstandard, der zur Darstellung verschiedener Sprachen und Symbole verwendet wird. Um die Unicode-Kodierung in chinesische Zeichen zu konvertieren, können Sie die in Python integrierten Funktionen chr() und ord() verwenden.

Verwenden Sie die String.length()-Funktion von Java, um die Länge einer Zeichenfolge zu ermitteln Verwenden Sie die String.length()-Funktion von Java, um die Länge einer Zeichenfolge zu ermitteln Jul 25, 2023 am 09:09 AM

Verwenden Sie die String.length()-Funktion von Java, um die Länge einer Zeichenfolge zu ermitteln. In der Java-Programmierung ist die Zeichenfolge ein sehr häufiger Datentyp. Wir müssen häufig die Länge einer Zeichenfolge ermitteln, dh die Anzahl der Zeichen in der Zeichenfolge. In Java können wir die Funktion length() der String-Klasse verwenden, um die Länge eines Strings zu ermitteln. Hier ist ein einfacher Beispielcode: publicclassStringLengthExample{publ

Probieren Sie die Methode aus, um das Problem der verstümmelten chinesischen Zeichen in Eclipse zu lösen Probieren Sie die Methode aus, um das Problem der verstümmelten chinesischen Zeichen in Eclipse zu lösen Jan 03, 2024 pm 05:28 PM

Haben Sie Probleme mit verstümmelten chinesischen Zeichen in Eclipse? Um diese Lösungen auszuprobieren, benötigen Sie konkrete Codebeispiele. 1. Einführung in den Hintergrund Mit der kontinuierlichen Weiterentwicklung der Computertechnologie spielt Chinesisch eine immer wichtigere Rolle in der Softwareentwicklung. Bei der Verwendung von Eclipse für die chinesische Entwicklung stoßen viele Entwickler jedoch auf Probleme mit verstümmeltem Code, was sich auf die Arbeitseffizienz auswirkt. Anschließend werden in diesem Artikel einige häufig auftretende Probleme mit verstümmeltem Code vorgestellt und entsprechende Lösungen und Codebeispiele bereitgestellt, um den Lesern bei der Lösung des chinesischen Problems mit verstümmeltem Code in Eclipse zu helfen. 2. Häufige Probleme mit verstümmeltem Code und Lösungsdateien

PHP-Tutorial: So konvertieren Sie JSON-Unicode in chinesische Zeichen PHP-Tutorial: So konvertieren Sie JSON-Unicode in chinesische Zeichen Mar 05, 2024 pm 06:36 PM

JSON (JavaScriptObjectNotation) ist ein leichtes Datenaustauschformat, das häufig für den Datenaustausch zwischen Webanwendungen verwendet wird. Bei der Verarbeitung von JSON-Daten stoßen wir häufig auf Unicode-codierte chinesische Zeichen (z. B. „u4e2du6587“) und müssen diese in lesbare chinesische Zeichen konvertieren. In PHP können wir diese Konvertierung durch einige einfache Methoden erreichen. Als Nächstes erfahren Sie, wie Sie JSONUnico konvertieren

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Lösen Sie das Problem der inkonsistenten Unicode-Zeichensatzkodierung, wenn Java eine Verbindung zur MySQL-Datenbank herstellt Lösen Sie das Problem der inkonsistenten Unicode-Zeichensatzkodierung, wenn Java eine Verbindung zur MySQL-Datenbank herstellt Jun 10, 2023 am 11:39 AM

Mit der Entwicklung von Technologien wie Big Data und Cloud Computing sind Datenbanken zu einem wichtigen Eckpfeiler der Unternehmensinformatisierung geworden. Bei in Java entwickelten Anwendungen ist die Verbindung zur MySQL-Datenbank zur Norm geworden. Bei diesem Vorgang stoßen wir jedoch häufig auf ein heikles Problem: Die Codierung des Unicode-Zeichensatzes ist inkonsistent. Dies wirkt sich nicht nur auf unsere Entwicklungseffizienz aus, sondern auch auf die Leistung und Stabilität der Anwendung. In diesem Artikel erfahren Sie, wie Sie dieses Problem lösen und die Verbindung zwischen Java und der MySQL-Datenbank reibungsloser gestalten können. 1. Unicode

Was sind die Unterschiede zwischen Unicode und ASCII? Was sind die Unterschiede zwischen Unicode und ASCII? Sep 06, 2023 am 11:56 AM

Zu den Unterschieden zwischen Unicode und ASCII gehören unterschiedliche Codierungsbereiche, unterschiedliche Speicherplätze und unterschiedliche Kompatibilität. Detaillierte Einführung: 1. Der Codierungsbereich von ASCII ist unterschiedlich und wird hauptsächlich zur Darstellung englischer Buchstaben verwendet. Der Codierungsbereich von Unicode ist viel breiter und kann fast alle Sprachzeichen darstellen Leerzeichen sind unterschiedlich. ASCII verwendet normalerweise 1 Byte zum Speichern eines Zeichens, während Unicode möglicherweise 2 oder mehr Bytes zum Speichern eines Zeichens verwendet. Unterschiedliche Kompatibilität usw.

See all articles