Dalam PHP, anda boleh menggunakan fungsi strlen() untuk mengira bilangan bait dalam rentetan. Fungsi ini mengira panjang rentetan dalam bait dan boleh mengira panjang aksara (bilangan bait) yang diduduki oleh rentetan Sintaksnya ialah "strlen (rentetan)". Dalam pengiraan fungsi ini, koma Inggeris, nombor, huruf Inggeris, titik perpuluhan, dsb. hanya menduduki satu bait manakala aksara Cina berkod GB2312 menduduki dua bait, dan aksara Cina berkod UTF-8 menduduki tiga bait.
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3
Watak yang diduduki oleh format pengekodan yang berbeza dalam php Bait adalah berbeza:
Format pengekodan ANSI: Satu aksara Cina menduduki 2 bait, dan satu aksara Inggeris menduduki 1 bait; -8 format pengekodan, satu aksara Cina menduduki 3 bait, dan satu aksara Inggeris menduduki 1 bait.
fungsi strlen() mengira panjang rentetan dalam bait.
Fungsi ini hanya menerima satu parameter $string (rentetan untuk dikira), dan mengembalikan 0 jika nilai yang diluluskan dalam parameter ini kosong.strlen($string)
Dalam fungsi strlen(), (dalam mod Bahasa Inggeris) koma, nombor, huruf Inggeris, titik perpuluhan
, garis bawah, ruang, dsb. hanya menduduki satu aksara (bait) .
.
<?php header("Content-type:text/html;charset=utf-8"); $str = "hello world!"; echo '字符串 “'.$str.'” 占:'.strlen($str).' 个字节<br>'; ?>
Dalam fungsi strlen(), aksara Cina berkod GB2312 menduduki dua aksara panjang (bait) dan aksara Cina berkod UTF-8 menduduki tiga aksara panjangnya (bait ).
<?php header("Content-type:text/html;charset=utf-8"); $str = "!"; echo '字符串 “'.$str.'” 占:'.strlen($str).' 个字节<br>'; ?>
<?php header("Content-type:text/html;charset=utf-8"); $str = "欢迎"; echo '字符串 “'.$str.'” 占:'.strlen($str).' 个字节<br>'; ?>
<?php header("Content-type:text/html;charset=utf-8"); $str = "hello,欢迎来到这里!"; echo '字符串 “'.$str.'” 占:'.strlen($str).' 个字节<br>'; ?>
Apabila mengira bilangan aksara dalam rentetan, fungsi strlen() hanya boleh memproses rentetan bahasa Inggeris dan tidak mesra kepada rentetan Cina atau campuran Cina dan Inggeris. Pada masa ini, anda perlu menggunakan fungsi
mb_strlen(), yang boleh mengira panjang rentetan mengikut .
Pengetahuan lanjutan: fungsi mb_strlen() 字符
fungsi mb_strlen() juga boleh mengembalikan panjang rentetan Format sintaks adalah seperti berikut:
$str ialah rentetan yang panjangnya perlu dikiramb_strlen($str [, $encoding = mb_internal_encoding()])
$pengekodan ialah parameter pilihan, iaitu pengekodan aksara. pengekodan aksara dalaman digunakan.
Nilai pulangan bagi fungsi mb_strlen() ialah bilangan aksara yang terkandung dalam rentetan $str dengan pengekodan $Jika $encoding tidak sah, false dikembalikan.
[Contoh] Gunakan fungsi mb_strlen() untuk mendapatkan panjang rentetan.
<?php header("Content-type:text/html;charset=utf-8"); $str = "hello 你好!"; echo '字符串 “'.$str.'” 的长度为:'.mb_strlen($str,"utf-8").'<br>'; $str = "欢迎来到PHP中文网!"; echo '<br>字符串 “'.$str.'” 的长度为:'.mb_strlen($str,'utf-8').'<br>'; ?>
yang sepadan.
Pembelajaran yang disyorkan: "Tutorial Video PHP$encoding
"
Atas ialah kandungan terperinci Bagaimana untuk mengira berapa banyak bait rentetan yang diduduki dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!