Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mengetahui panjang rentetan dalam php

Bagaimana untuk mengetahui panjang rentetan dalam php

醉折花枝作酒筹
醉折花枝作酒筹asal
2021-08-06 14:49:176260semak imbas

Dalam artikel sebelum ini, kami mempelajari cara menggunakan algoritma "semula jadi" untuk mengetahui persamaan dan perbezaan rentetan Jika anda memerlukannya, sila baca " Bagaimana untuk membandingkan persamaan dan perbezaan rentetan dengan ". algoritma semula jadi" dalam PHP (sensitif huruf besar-kecil) 》. Kali ini kami akan memperkenalkan kepada anda kaedah mendapatkan panjang rentetan Anda boleh merujuknya jika anda memerlukannya.

Dalam php, kita perlu mengetahui panjang rentetan supaya kita boleh melakukan beberapa perkara dan memahami rentetan itu. Jadi tanpa berlengah lagi, mari kita lihat cara mendapatkan fungsi rentetan.

Mula-mula mari kita lihat contoh kecil.

<?php
echo strlen("World grand, welcome home!");
?>

Hasil contoh kecil ini ialah Kira rentetan dari awal hingga akhir. Biar saya katakan, anda mesti mengiranya sekali. Bagaimana jika fungsi ini salah? Kemudian saya berasa sangat berjaya. Tetapi saya mengira dari awal hingga akhir dan mendapati bahawa panjang fungsi ini benar-benar 26.

Tiada masalah dengan fungsi ini, jadi mari kita bercakap tentang fungsi ini.

Bagaimana untuk mengetahui panjang rentetan dalam php

fungsi strlen() mengembalikan panjang rentetan (bilangan bait). strlen() sering digunakan dalam gelung dan fungsi lain apabila penting untuk menentukan apabila rentetan tamat. (Sebagai contoh, dalam gelung, kita perlu menamatkan gelung selepas aksara terakhir dalam rentetan)

Mari lihat contoh lain.


Hasilnya

<?php
echo strlen("世界盛大,欢迎回家!");
?>

Saya dapati jawapannya berbeza daripada contoh di atas, bukan? Satu parameter dalam bahasa Cina dan satu parameter dalam bahasa Inggeris Adakah terdapat perbezaan yang begitu besar? Aksara Cina ditambah tanda baca jelasnya hanya 10 aksara. Mengapakah panjang yang satu ini benar-benar 30 aksara?

Sudah tentu terdapat perbezaan besar antara perkataan Cina dan perkataan Inggeris. Dan bait yang diduduki oleh setiap huruf adalah berbeza di bawah pelbagai pengekodan

Bagaimana untuk mengetahui panjang rentetan dalam phpDi bawah

kod ASCII

, satu huruf Inggeris (tanpa mengira huruf besar dan kecil) menduduki satu bait ruang, satu aksara Cina menduduki dua bait ruang. Urutan nombor perduaan, yang digunakan sebagai unit digital dalam komputer, secara amnya ialah nombor perduaan 8-bit, ditukar kepada perpuluhan. Nilai minimum ialah -128 dan nilai maksimum ialah 127. Sebagai contoh, kod ASCII ialah bait.

Di bawah

Pengekodan UTF-8

, satu aksara Inggeris bersamaan dengan satu bait dan satu aksara Cina (termasuk bahasa Cina tradisional) bersamaan dengan tiga bait. Tanda baca bahasa Cina menduduki tiga bait, dan tanda baca bahasa Inggeris menduduki satu bait. Di bawah

Pengekodan Unikod

, satu perkataan Inggeris bersamaan dengan dua bait dan satu aksara Cina (termasuk bahasa Cina tradisional) bersamaan dengan dua bait. Tanda baca bahasa Cina menduduki dua bait, dan tanda baca bahasa Inggeris menduduki dua bait. Pengekodan yang digunakan dalam contoh kami ialah UTF-8, jadi satu aksara Cina menduduki tiga bait. Jadi panjang 10 aksara Cina adalah sehingga 30.

Itu sahaja jika anda ingin mengetahui perkara lain, anda boleh klik ini. → →tutorial video php

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

Kenyataan:
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