ค้นหาความยาวของสตริง

PHP:
ค้นหาความยาวของสตริง

วิธีการ:

ใช้ฟังก์ชัน strlen() อย่างนี้:

<?php
$text = "Hello, world!";
$length = strlen($text);
echo $length; // ผลลัพธ์: 13
?>

ถ้าคุณรันโค้ดนี้ คุณจะเห็น 13 บนหน้าจอของคุณ เพราะว่า “Hello, world!” มีความยาว 13 ตัวอักษร รวมถึงช่องว่างและเครื่องหมายตกใจ

ลงลึก

ฟังก์ชัน strlen() ถูกรวมอยู่ใน PHP ตั้งแต่เวอร์ชันต้นๆ มันเรียบง่ายและทำงานตามจำนวนไบต์ ซึ่งโดยปกติจะเท่ากับจำนวนตัวอักษรในสตริงที่ไม่ต้องพิจารณาถึงการเข้ารหัสพิเศษ

อย่างไรก็ตาม ด้วยการประสานงานระหว่างประเทศของเว็บแอปพลิเคชัน การจัดการกับหลายภาษาและการเข้ารหัสตัวอักษรกลายเป็นเรื่องปกติ ตัวอักษรใน UTF-8 เช่น สามารถใช้มากกว่าหนึ่งไบต์ได้ นั่นคือที่มาของ mb_strlen():

<?php
// สตริงที่มีตัวอักษรหลายไบต์
$multibyteText = "こんにちは";
$length = mb_strlen($multibyteText, "UTF-8");
echo $length; // ผลลัพธ์: 5
?>

ห้าตัวอักษร แต่ใช้ไบต์มากกว่า ฟังก์ชัน mb_strlen() ให้ความเคารพต่อการเข้ารหัสตัวอักษร โดยการรับประกันการตรวจสอบความยาวที่ถูกต้องสำหรับสตริงหลายไบต์

strlen() เร็วและเหมาะสมสำหรับชุดตัวอักษรที่ใช้ไบต์เดียว mb_strlen(), ถึงแม้จะเล็กน้อยช้ากว่าเนื่องจากต้องจัดการกับการเข้ารหัสที่ซับซ้อนมากขึ้น แต่จำเป็นเมื่อทำงานกับข้อความที่ประสานระดับนานาชาติ

ดูเพิ่มเติม