Jadual Kandungan
浅析PHP中strlen和mb_strlen的区别,strlenmb_strlen
php中strlen与mb_strlen与count的不同
php strlen跟mb_strlen有什不同?
Rumah php教程 php手册 浅析PHP中strlen和mb_strlen的区别,strlenmb_strlen

浅析PHP中strlen和mb_strlen的区别,strlenmb_strlen

Jun 13, 2016 am 09:26 AM
mb php strlen perbezaannya

浅析PHP中strlen和mb_strlen的区别,strlenmb_strlen

在PHP中,strlen与mb_strlen是求字符串长度的函数,但是对于一些初学者来说,如果不看手册,也许不太清楚其中的区别。
下面通过例子,讲解这两者之间的区别。

先看例子:

<&#63;php 
//测试时文件的编码方式要是UTF8 
$str='中文a字1符'; 
echo strlen($str).'<br>';//14 
echo mb_strlen($str,'utf8').'<br>';//6 
echo mb_strlen($str,'gbk').'<br>';//8 
echo mb_strlen($str,'gb2312').'<br>';//10 
&#63;> 
Salin selepas log masuk

结果分析:在strlen计算时,对待一个UTF8的中文字符是3个长度,所以“中文a字1符”长度是3*4+2=14,在mb_strlen计算时,选定内码为UTF8,则会将一个中文字符当作长度1来计算,所以“中文a字1符”长度是6 .

利用这两个函数则可以联合计算出一个中英文混排的串的占位是多少(一个中文字符的占位是2,英文字符是1)

echo (strlen($str) + mb_strlen($str,'UTF8')) / 2; 
Salin selepas log masuk

例如 “中文a字1符” 的strlen($str)值是14,mb_strlen($str)值是6,则可以计算出“中文a字1符”的占位是10.

echo mb_internal_encoding(); 
Salin selepas log masuk

PHP内置的字符串长度函数strlen无法正确处理中文字符串,它得 到的只是字符串所占的字节数。对于GB2312的中文编码,strlen得到的值是汉字个数的2倍,而对于UTF-8编码的中文,就是3倍的差异了(在 UTF-8编码下,一个汉字占3个字节)。

采用mb_strlen函数可以较好地解决这个问题。mb_strlen的用法和 strlen类似,只不过它有第二个可选参数用于指定字符编码。例如得到UTF-8的字符串$str长度,可以用 mb_strlen($str,'UTF-8')。如果省略第二个参数,则会使用PHP的内部编码。内部编码可以通过 mb_internal_encoding()函数得到。

需要注意的是,mb_strlen并不是PHP核心函数,使用前需要确保在php.ini中加载了php_mbstring.dll,即确保“extension=php_mbstring.dll”这一行存在并且没有被注释掉,否则会出现未定义函 数的问题。

php中strlen与mb_strlen与count的不同

strlen 计算字符串长度,一个中文当2字符
mb_strlen根据它的字符编码模式,统计字符quot
count计算数组中的元素数目或对象中的属性个数
 

php strlen跟mb_strlen有什不同?

strlen与mb_strlen是求字符串长度的函数
下面通过例子,讲解这两者之间的区别。
';//14echo mb_strlen($str,'utf8').'
';//6echo mb_strlen($str,'gbk').'
';//8echo mb_strlen($str,'gb2312').'
';//10?>需要注意的是,mb_strlen并不是PHP核心函数,使用前需要确保在php.ini中加载了php_mbstring.dll,即确保“extension=php_mbstring.dll”这一行存在并且没有被注释掉,否则会出现未定义函 数的问题。

 

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

DeepSeek Apakah perbezaan antara versi R1 dan V3 DeepSeek Apakah perbezaan antara versi R1 dan V3 Feb 19, 2025 pm 03:24 PM

DeepSeek: Perbandingan mendalam antara versi R1 dan V3 membantu anda memilih pembantu AI terbaik! DeepSeek sudah mempunyai puluhan juta pengguna, dan fungsi dialog AI telah diterima dengan baik. Tetapi adakah anda keliru ketika menghadapi versi R1 dan V3? Artikel ini akan menjelaskan perbezaan antara kedua -dua terperinci untuk membantu anda memilih versi yang paling sesuai. Perbezaan teras antara versi DeepSeekR1 dan V3: Ciri-ciri matlamat reka bentuk versi V3 memberi tumpuan kepada penalaran masalah yang kompleks, analisis logik yang mendalam, model bahasa besar pelbagai fungsi, yang memberi tumpuan kepada skalabilitas dan kecekapan seni bina dan parameter pengoptimuman pembelajaran pengoptimuman, skala parameter 1.5 Bilion hingga 70 bilion seni bina pakar hibrid MOE, jumlah parameter adalah setinggi 671 bilion, setiap token diaktifkan sebanyak 37 bilion

Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Feb 07, 2025 am 11:57 AM

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data

Ringkasan Soalan Lazim untuk Penggunaan DeepSeek Ringkasan Soalan Lazim untuk Penggunaan DeepSeek Feb 19, 2025 pm 03:45 PM

Panduan Pengguna Alat DeepSeekai dan FAQ DeepSeek adalah alat pintar AI yang kuat. FAQ: Perbezaan antara kaedah akses yang berbeza: Tidak ada perbezaan fungsi antara versi web, versi aplikasi dan panggilan API, dan aplikasi hanya pembungkus untuk versi web. Penggunaan tempatan menggunakan model penyulingan, yang sedikit lebih rendah daripada versi penuh DeepSeek-R1, tetapi model 32-bit secara teorinya mempunyai keupayaan versi penuh 90%. Apa itu bar? Sillytavern adalah antara muka depan yang memerlukan memanggil model AI melalui API atau Ollama. Apa itu Had Breaking

Adakah bitcoin mempunyai stok? Adakah bitcoin mempunyai stok? Mar 03, 2025 pm 06:42 PM

Pasaran cryptocurrency berkembang pesat, dan Bitcoin, sebagai pemimpin, telah menarik perhatian banyak pelabur. Ramai orang yang ingin tahu: adakah bitcoin mempunyai stok? Jawapannya tidak. Bitcoin sendiri bukan stok, tetapi pelabur secara tidak langsung boleh melabur dalam aset yang berkaitan dengan bitcoin melalui pelbagai saluran, yang akan dijelaskan secara terperinci dalam artikel ini. Alternatif untuk Bitcoin Investment: Daripada melabur secara langsung di Bitcoin, pelabur boleh mengambil bahagian dalam pasaran Bitcoin oleh: Bitcoin ETF: Ini adalah dana yang didagangkan di pasaran perdagangan saham, yang portfolio asetnya mengandungi kontrak niaga hadapan Bitcoin atau Bitcoin. Ini adalah pilihan yang agak mudah untuk pelabur yang terbiasa dengan pelaburan saham, tanpa perlu memegang Bitcoin secara langsung. Saham Syarikat Perlombongan Bitcoin: Perniagaan syarikat ini adalah perlombongan bitcoin dan memegang bitcoin

Program PHP untuk mengira vokal dalam rentetan Program PHP untuk mengira vokal dalam rentetan Feb 07, 2025 pm 12:12 PM

Rentetan adalah urutan aksara, termasuk huruf, nombor, dan simbol. Tutorial ini akan mempelajari cara mengira bilangan vokal dalam rentetan yang diberikan dalam PHP menggunakan kaedah yang berbeza. Vokal dalam bahasa Inggeris adalah a, e, i, o, u, dan mereka boleh menjadi huruf besar atau huruf kecil. Apa itu vokal? Vokal adalah watak abjad yang mewakili sebutan tertentu. Terdapat lima vokal dalam bahasa Inggeris, termasuk huruf besar dan huruf kecil: a, e, i, o, u Contoh 1 Input: String = "TutorialSpoint" Output: 6 menjelaskan Vokal dalam rentetan "TutorialSpoint" adalah u, o, i, a, o, i. Terdapat 6 yuan sebanyak 6

Apakah perbezaan antara pra-pasaran dan perdagangan selepas pasaran? Penjelasan terperinci mengenai perbezaan antara perdagangan pra-pasaran dan selepas pasaran Apakah perbezaan antara pra-pasaran dan perdagangan selepas pasaran? Penjelasan terperinci mengenai perbezaan antara perdagangan pra-pasaran dan selepas pasaran Mar 03, 2025 pm 11:54 PM

Di pasaran kewangan tradisional, perdagangan pra-pasaran dan selepas pasaran merujuk kepada aktiviti perdagangan di luar tempoh dagangan biasa. Walaupun pasaran cryptocurrency didagangkan sepanjang masa, platform perdagangan seperti Bitget juga menawarkan ciri -ciri yang sama, terutama beberapa platform komprehensif yang perdagangan saham dan kriptografi pada masa yang sama. Artikel ini akan menjelaskan perbezaan dalam perdagangan pra-pasaran dan selepas pasaran dan meneroka kesannya terhadap harga mata wang. Empat perbezaan utama antara perdagangan pra-pasaran dan selepas pasaran: perbezaan utama antara pra-pasaran dan perdagangan selepas pasaran dan tempoh dagangan biasa adalah dalam empat aspek: masa dagangan, kecairan, turun naik harga dan jumlah dagangan: masa dagangan: dagangan pra-pasaran berlaku sebelum perdagangan rasmi bermula, dan perdagangan selepas itu adalah selepas dagangan. Kecairan: Kecairan perdagangan pra-dan selepas jam adalah rendah, terdapat beberapa peniaga, dan tawaran dan tawaran harga tawaran adalah besar;

See all articles