Apakah fungsi untuk mencari panjang rentetan dalam php

青灯夜游
Lepaskan: 2023-03-16 13:06:01
asal
5874 orang telah melayarinya

Terdapat dua fungsi dalam PHP untuk mengira panjang rentetan: 1. Fungsi strlen() boleh mengira panjang rentetan bahasa Inggeris dan sintaksnya ialah "strlen($string)" 2; Fungsi mb_strlen() boleh Dengan menetapkan pengekodan aksara, hitung panjang rentetan bahasa Inggeris, rentetan Cina atau rentetan campuran Cina-Inggeris Sintaksnya ialah "mb_strlen($string,"Pengekodan aksara").

Apakah fungsi untuk mencari panjang rentetan dalam php

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi PHP 8.1, komputer DELL G3

Biasa digunakan dalam PHP untuk mengira panjang rentetan Terdapat dua fungsi, iaitu fungsi strlen() dan mb_strlen(). Apabila berurusan dengan rentetan semua bahasa Inggeris, kesan kedua-dua fungsi ini adalah sama, tetapi apabila berurusan dengan rentetan campuran Cina dan Inggeris atau Cina tulen, kedua-dua fungsi ini akan mempunyai beberapa perbezaan:

  • Fungsi strlen() boleh mengira panjang rentetan bahasa Inggeris, tetapi untuk rentetan campuran Cina dan Inggeris atau Cina tulen, panjangnya tidak boleh dikira dengan tepat.

  • fungsi mb_strlen() boleh mengira panjang rentetan bahasa Inggeris, rentetan Cina atau rentetan campuran Cina dan Inggeris.

1. Fungsi strlen() mencari panjang rentetan

fungsi strlen() boleh mengembalikan panjang rentetan yang diberikan, ia. format sintaks Seperti berikut:

strlen($string)
Salin selepas log masuk
  • Parameter $string ialah rentetan yang panjangnya perlu dikira. Mengembalikan 0 jika $string kosong.

Nota: Dalam fungsi strlen(), nombor, bahasa Inggeris, titik perpuluhan, garis bawah dan ruang menduduki satu aksara panjang manakala aksara Cina yang dikodkan GB2312 menduduki dua aksara; Panjang aksara Cina yang dikodkan UTF-8 ialah tiga aksara.

Contoh:

<?php
header("Content-type:text/html;charset=utf-8");
$str = "hello world!";
echo &#39;字符串 “&#39;.$str.&#39;” 的长度为:&#39;.strlen($str).&#39;<br>&#39;;
?>
Salin selepas log masuk

Rentetan $str mengandungi 10 huruf Inggeris, 1 ruang dan 1 tanda seru bahasa Inggeris, sejumlah 12 aksara, jadi panjang output ialah 12.

Apakah fungsi untuk mencari panjang rentetan dalam php

Tetapi fungsi strlen() tidak sesuai untuk mengira panjang rentetan Cina, kerana dalam fungsi ini satu aksara Cina yang dikodkan GB2312 menduduki dua aksara panjang, satu UTF- 8 Aksara Cina yang dikodkan ialah tiga aksara panjang.

<?php
header("Content-type:text/html;charset=utf-8");
$str = "hello 你好!";
echo &#39;字符串 “&#39;.$str.&#39;” 的长度为:&#39;.strlen($str).&#39;<br>&#39;;
?>
Salin selepas log masuk

Apakah fungsi untuk mencari panjang rentetan dalam php

2 Fungsi mb_strlen() mencari panjang rentetan

Fungsi mb_strlen() boleh juga mengembalikan panjang rentetan, format sintaks adalah seperti berikut:

mb_strlen($str [, $encoding = mb_internal_encoding()])
Salin selepas log masuk
  • $str ialah rentetan yang panjangnya perlu dikira

  • $encoding ialah parameter pilihan, iaitu Pengekodan aksara, jika diabaikan, 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.

Nota: Tidak seperti fungsi strlen(), dalam fungsi mb_strlen(), sama ada aksara Cina, Inggeris, nombor, titik perpuluhan, garis bawah dan ruang, ia hanya menduduki satu aksara panjangnya.

[Contoh] Gunakan fungsi mb_strlen() untuk mendapatkan panjang rentetan.

<?php
header("Content-type:text/html;charset=utf-8");
$str = "hello 你好!";
echo &#39;字符串 “&#39;.$str.&#39;” 的长度为:&#39;.mb_strlen($str,"utf-8").&#39;<br>&#39;;

$str = "欢迎来到PHP中文网!";
echo &#39;<br>字符串 “&#39;.$str.&#39;” 的长度为:&#39;.mb_strlen($str,&#39;utf-8&#39;).&#39;<br>&#39;;
?>
Salin selepas log masuk

Apakah fungsi untuk mencari panjang rentetan dalam php

Dapat dilihat bahawa kita boleh menangani masalah panjang rentetan Cina dengan baik dengan menetapkan parameter $encoding yang sepadan.

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Apakah fungsi untuk mencari panjang rentetan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan