Tutorial Cara Menghitung Panjang Karakter di PHP

Cara Menghitung Panjang Karakter di PHP – Dalam pengembangan aplikasi berbasis web, menghitung panjang karakter pada sebuah string atau teks merupakan kebutuhan yang sangat umum. Fitur ini sering digunakan untuk validasi input form, pembatasan jumlah karakter pada komentar, username, password, hingga analisis data teks.

Namun, tidak semua teks dapat dihitung dengan cara yang sama. Perbedaan jenis karakter seperti huruf ASCII, spasi, simbol, hingga karakter Unicode dapat memengaruhi hasil perhitungan. Oleh karena itu, memahami cara menghitung panjang karakter di PHP secara tepat sangat penting agar aplikasi berjalan dengan semestinya. Penasaran? Yuk simak tutorial hingga selesai.

Cara Menghitung Panjang Karakter di PHP

Cara menghitung panjang karakter di PHP kita dapat menggunakan fungsi bawaan PHP yaitu strlen() dan mb_strlen(). Agar tidak bingung, mari bahas kedua fungsi tersebut lebih dalam berikut ini.

1. Menggunakan Fungsi strlen()

Fungsi paling dasar yang digunakan untuk menghitung panjang karakter di PHP adalah strlen(). Format dasar penulisan fungsi strlen() adalah sebagai berikut.

strlen(string $string): int

Seperti yang terlihat pada format penulisan kode di atas, strlen() di PHP hanya memiliki satu parameter yaitu $string yang harus Anda isi dengan teks atau string yang akan dihitung jumlah karakternya. Fungsi strlen() akan menghitung jumlah karakter berdasarkan byte. Untuk teks berisi huruf alfabet standar (ASCII), hasilnya sudah akurat dan aman digunakan.

Berikut ini adalah contoh cara menghitung karakter pada suatu string atau teks menggunakan fungsi strlen() di bahasa pemrograman PHP.

<?php
  $teks = 'Saya sedang belajar PHP bersama Afid Arifin';
  echo strlen($teks); // 43
?>

Jika Anda menjalankan potongan kode di atas, maka akan menghasilkan output panjanjg karakter 43. Semua karakter termasuk whitespace atau spasi pada variable $teks akan dihitung menggunakan fungsi strlen().

2. Menggunakan Fungsi mb_strlen()

Jika teks mengandung karakter non-ASCII seperti huruf beraksen, emoji, atau bahasa selain Inggris, strlen() dapat menghasilkan output yang tidak akurat. Untuk kasus ini, PHP menyediakan fungsi mb_strlen(). Format dasar penulisan mb_strlen() adalah sebagai berikut.

mb_strlen(string $string, ?string $encoding = null): int

Seperti yang telihat, format penulisan mb_strlen() di PHP memiliki dua parameter yaitu $string dan $encoding. Dimana parameter pertama harus diisi dengan string atau teks yang akan dihitung jumlah karakternya dan parameter kedua diisi dengan jenis encoding seperti UTF-8 dan sebagainya.

Berikut ini adalah contoh cara menghitung karakter pada suatu string atau teks menggunakan fungsi mb_strlen() di bahasa pemrograman PHP.

<?php
  $teks = 'Saya sedang belajar PHP bersama Afid Arifin 🚀';
  echo mb_strlen($teks, 'UTF-8'); // 45
?>

Potongan kode di atas merupakan modifikasi dari kode sebelumnya, dimana saya hanya menambahkan satu emoji 🚀. Jika Anda jalankan, maka output yang dihasilkan yaitu panjang karakter 45. Namun, jika Anda coba hitung menggunakan fungsi strlen(), maka outputnya yaitu 48.

Sedikit agak membingungkan, namun yang jelas tanpa mb_strlen() untuk menghitung karakter yang karakter non-ASCII, emoji 🚀 dapat dihitung lebih dari satu byte sehingga hasilnya keliru. Agar lebih memahami, silakan Anda bandingkan dan hitung secara manual isi variabel $teks tanpa emoji dengan emoji, maka akan tampak perbedaanya.

Penutup

Menghitung panjang karakter di PHP terlihat sederhana, tetapi dapat menjadi krusial tergantung jenis teks yang diproses. strlen() cocok untuk kebutuhan dasar, sedangkan mb_strlen() menjadi pilihan terbaik untuk aplikasi yang mendukung Unicode dan multibahasa. Dengan memahami perbedaan dan penerapannya, Anda dapat membangun aplikasi PHP yang lebih stabil, akurat, dan profesional.

Demikian artikel pada kesempatan kali ini mengenai tutorial cara menghitung panjang karakter di PHP untuk pemula. Sekian dan semoga dapat bermanfaat.

Bagikan Ke

Leave a Reply

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *