Dalam tutorial belajar PHP kali ini kita akan membahas fungsi trim() yang digunakan untuk menghapus spasi (whitespace) di awal dan akhir sebuah string PHP. Fungsi trim() juga memiliki 2 varian lain yakni ltrim() dan rtrim().
Pengertian Fungsi trim()
Secara default bawaan PHP, fungsi trim() digunakan untuk menghapus spasi atau karakter whitespace dari sebuah string. Karakter spasi yang akan dihapus bisa berada di awal maupun di akhir string.
Dalam prakteknya, fungsi trim() sering digunakan untuk ‘membersihkan’ hasil input form dari karakter spasi yang sengaja atau tidak sengaja ditambahkan pengguna.
Berikut adalah contoh penggunaan dasar fungsi trim() di dalam PHP:
<?php $nama = " andi "; $trim_nama = trim($nama); echo $trim_nama; // "andi" ?>
Karena di HTML whitespace atau spasi tidak akan ditampilkan, penerapan kode diatas tidak terlalu jelas efeknya. Fungsi trim() akan lebih terlihat jika digunakan dalam operasi perbandingan, seperti contoh berikut:
<?php $nama = "andi "; $nama_juga = "andi"; if ($nama == $nama_juga) { echo "Nama Sama"; } else { echo "Nama Beda"; } // hasil: Nama Beda ?>
Dalam operasi perbandingan diatas, tambahan sebuah spasi diakhir variabel $nama, yakni “andi ” akan membuat operasi perbandingan menghasilkan nilai FALSE, sehingga hasil akhirnya adalah “Tidak Sama”.
Dengan menambahkan fungsi trim(), kode program diatas akan menghasilkan nilai TRUE, karena spasi yang ada baik diawal dan diakhir string akan dihapus terlebih dahulu:
<?php $nama = "andi "; $nama_juga = "andi"; if (trim($nama) == trim($nama_juga)) { echo "Nama Sama"; } else { echo "Nama Beda"; } // hasil: Nama Sama ?>
Selain menghapus karakter spasi, fungsi trim() juga akan menghapus 5 karakter whitespace lainnya, seperti tab, new line, carriage return (karakter enter), null-byte, dan vertical tab. Dalam kode karakter ASCII, ke-6 karakter ini adalah sebagai berikut:
- ” ” (ASCII 32 (0x20)), : karakter spasi.
- “\t” (ASCII 9 (0x09)), : karakter tab.
- “\n” (ASCII 10 (0x0A)), : karakter new line (line feed).
- “\r” (ASCII 13 (0x0D)), : karakter carriage return.
- “\0” (ASCII 0 (0x00)), : karakter NULL-byte.
- “\x0B” (ASCII 11 (0x0B)), : karakter vertical tab.
Berikut contoh penggunaannya:
<?php $nama = "\t \t andi \n \r"; $nama_juga = " andi \t"; if (trim($nama) == trim($nama_juga)) { echo "Nama Sama"; } else { echo "Nama Beda"; } // hasil: Nama Sama ?>
Untuk menulis karakter “tab”, tidak tersedia tombol khusus di dalam keyboard, oleh karena itu kita menggunakan escape karakter untuk tab, yakni “\t”.
Fungsi trim() ini sering digunakan untuk menfilter hasil imputan form. Berikut adalah contoh penggunaannya:
<?php $nama = trim($_GET["nama"]); // proses variabel nama disini ?>
Menambahkan Karakter yang akan Dihapus (character_mask)
Fungsi trim() juga memiliki argumen kedua yang bersifat opsional. Argumen kedua ini bertipe string yang jika ditulis akan ditambahkan kedalam daftar karakter yang ikut dihapus, atau istilah teknisnya disebuh dengan character_mask. Langsung saja kita lihat contoh penggunaannya:
<?php $nama = "__andi__"; $trim_nama = trim($nama); echo $trim_nama; // "__andi__" echo "<br>"; $trim_nama = trim($nama,"_"); echo $trim_nama; // "andi" ?>
Dengan membuat fungsi trim($nama,”_”) maka karakter underscore “_” juga akan ikut dihapus.
Lebih jauh lagi, character_mask ini mendukung penulisan range atau jangkauan karakter, yang ditulis dengan “awal..akhir”.
Sebagai contoh, jika saya memiliki beberapa string yang dimulai dengan angka seperti: “1 kelereng”, “2 buah”, “3 orang”, saya bisa menggunakan fungsi trim() untuk menghapus seluruh angka awalan ini. Berikut contohnya:
<?php $kata = "1 kelereng"; $trim_kata = trim($kata,"0..9"); echo $trim_kata; // "kelereng" echo "<br>"; $kata = "2 buah"; $trim_kata = trim($kata,"0..9"); echo $trim_kata; // "buah" echo "<br>"; $kata = "3 orang"; $trim_kata = trim($kata,"0..9"); echo $trim_kata; // "orang" ?>
Fungsi trim($kata,”0..9″) berarti: hapus whitespace yang ada di awal dan akhir string $kata, dan hapus karakter 0, 1, 2, 3 s/d 9 di awal dan diakhir string. Fitur untuk menghapus karakter tertentu ini cukup berguna ketika kita ingin ‘membersihakan’ sebuah string dari karakter yang tidak diinginkan.
Pengertian Fungsi rtrim() dan ltrim()
Fungsi rtrim() dan ltrim() adalah bentuk lain dari fungsi trim(), tapi hanya akan menghapus karakter whitespace yang ada disisi kanan (untuk rtrim) dan di sisi kiri string (untuk ltrim). Kedua fungsi ini juga bisa ditambahkan argumen ketiga seperti halnya fungsi trim().
Berikut contoh penggunaan fungsi rtrim() dan ltrim() dalam PHP:
<?php $nama = " andi "; $rtrim_nama = rtrim($nama); echo $rtrim_nama; // " andi" echo "<br>"; $ltrim_nama = ltrim($nama); echo $ltrim_nama; // "andi " echo "<br>"; $nama = "___andi___"; $rtrim_nama = rtrim($nama,"_"); echo $rtrim_nama; // "___andi" echo "<br>"; $ltrim_nama = ltrim($nama,"_"); echo $ltrim_nama; // "andi___" ?>
Dapat terlihat bahwa fungsi rtrim() dan fungsi ltrim() hanya akan menghapus karakter pada satu sisi saja.
Fungsi trim(), rtrim() dan ltrim() yang kita pelajari disini cocok digunakan untuk operasi ‘pembersihan’ string, ini umumnya digunakan untuk menfilter hasil inputan form dari pengguna (user).
oh jadi begitu ya om..mntap om..ane jdi gk bingung lagi
trima kasih buat duniailkom, browsing sana-sini buat nyari tutorial pemrograman dengan bahasa indonesia emang banyak tapi buat teman-teman yang baru mulai belajar atau pengen terjun ke dunia pemrograman, saran saya sering-sering lah kunjungi situs ini (www.duniailkom.com), banyak yang saya ketahui setelah belajar di "DuniaIlkom" karena kalimat penyampaian materi setiap chapter yang detail dan di sertai screenshoot program sangat membantu pembaca untuk memahami materi pembelajaran di setiap chapternya, nice job buat tim duniailkom ????????, kompor gas dah ????????
Hehe… terimakasih dukungannya gan, semoga tutorial yang ada di duniailkom ini bisa bermanfaat :)
mas, kalau ingin menghapus karakter "_" tapi posisinya berada ditengah bagaimana ya? seperti contohnya $spell = "kaka_kuku"; soalnya saya coba tidak bisa terhapus menggunakan fungsi trim();
terimakasih.
Bisa pakai fungsi str_replace():
<?php
$spell = "kaka_kuku";
$output = str_replace('_', '', $spell);
echo $output; // kakakuku
?>
sip, terimakasih mas/
Akhirnya tau jga fungsinya
Gimana klo string nya lebih dari satu apa bisa pake trim, contoh <?php echo $hobi1,$hobi2,$hobi2;?>
Fungsi trim() hanya untuk menghapus spasi di awal dan akhir saja, kalau sudah banyak seperti itu tidak bisa dipakai lagi, harus di proses satu per satu.
Trims dunialkom, saya juga sudah mencari2 programnya, sudah saya buat sendiri tapi masih banyak kesalahan Dan pengolahan program yang banyak, untung ada tutor ini ternyata tidak perlu ribet untuk membuat nya,? dari sini saya mendapat pembelajaran bahwa segala sesuatu jangan dipikirkan ribet dulu wkwkwk trimss admjn dunialkom
kalau untuk range simbol bisa tidak ya? seperti a-z, jadi misalnya !-?
Untuk yang kompleks seperti itu, bisa coba ke fungsi2 regular expression