Di tutorial ini kita akan mempelajari bagaimana cara mengganti kata dengan fungsi str_replace()
. Dalam pemrograman, pemrosesan kata jadi hal yang penting untuk mempermudah pengguna agar tidak melakukan tindakan berulang untuk hal yang sama.
Sebagai contoh dalam kasus mencetak surat, dimana didalamnya entah ada nama perorangan atau perusahaan yang harus diubah-ubah setiap kali surat baru ingin dicetak, hal tersebut bisa dilakukan dengan str_replace()
dan sentuhan logic pemrogramnya.
Berikut ini adalah deskripsi singkat fungsi str_replace()
.
str_replace(
array|string $search,
array|string $replace,
string|array $subject,
int &$count = null
): string|array
Code language: PHP (php)
Penjelasan singkat mengenai parameter yang ada di str_replace()
:
$search
adalah nilai atau kata yang ingin dicari, dapat berupastring
atauarray
.$replace
adalah kata atau string yang akan menggantikan nilai $search apabila ditemukan, dapat berupastring
atauarray
.$subject
adalah string atau kata utama untuk dicari dan diganti dengan string atau kata lain, dapat berupastring
atauarray
.$count
mengeluarkan jumlah penggantian yang dilakukan oleh proses fungsistr_replace()
, bersifat opsional.
Jika parameter $search
dan $replace
adalah array, maka str_replace()
akan mencari setiap elemen dari arary $search
dan menggantinya dengan setiap elemen yang ada di array $replace
.
Jika array $replace
memiliki lebih sedikit elemen daripada array $search
, maka fungsi str_replace()
akan menggunakan string kosong untuk nilai pengganti.
Jika $search
adalah array dan $replace
adalah string, maka fungsi str_replace()
akan menggantikan setiap element dalam array $search
dengan string yang ada di $replace
.
str_replace()
tidak mengubah string yang ada didalam $subject
, melainkan mengembalikan nilai baru di $search
dan diganti dengan $replace
.Contoh penggunaan fungsi str_replace()
Mari kita coba beberapa contoh penggunaan PHP fungsi str_replace()
.
1. Contoh sederhana penggunaan fungsi str_replace()
Berikut ini adalah contoh fungsi str_replace()
dimana kita akan mengganti kata “Halo” dengan “Hai” didalam kata “Halo, apa kabar?”.
<?php
$string = 'Halo, apa kabar?';
$newString = str_replace('Halo', 'Hai', $string);
echo $newString; // Output: Hai, apa kabar?
Code language: HTML, XML (xml)
Kode diatas akan menampilkan kata “Hai, apa kabar?”, str_replace()
akan menjadi kata “Halo” dan menggantinya dengan kata “Hai”. Termasuk jika ada lebih dari satu kata “Halo”, maka str_replace()
akan mengganti semua kata tersebut dengan kata pengganti. Seperti dibawah ini.
<?php
$string = 'Halo Halo Halo Halo, apa kabar?';
$newString = str_replace('Halo', 'Hai', $string);
echo $newString; // Output: Hai Hai Hai Hai, apa kabar?
Code language: HTML, XML (xml)
2. Mengganti beberapa kata dengan str_replace() menggunakan array
str_replace()
memungkinkan kita mengganti beberapa kata yang lebih dari satu, alih-alih menggunakan string, str_replace()
dapat melakukannya dengan menggunakan array
sebagai pencari kata yang ingin diganti dan array
sebagai kata ganti. Sebagai contohnya kode dibawah ini.
<?php
$string = 'Halo andi, apa kabar?';
$search = ['Halo', 'andi'];
$replace = ['Hai', 'budi'];
$newString = str_replace($search, $replace, $string);
echo $newString; // Output: Hai budi, apa kabar?
Code language: HTML, XML (xml)
Kode diatas akan mencari kata “Halo” dan “andi” pada kalimat “Halo andi, apa kabar?” dan akan menggantinya dengan “Hai” dan “budi”, sehingga menjadi “Hai budi, apa kabar?”.
Didalam prosesnya, str_replace() melakukan proses penggantian dari kiri ke kanan, sehingga kemungkinan terjadi pergantian nilai dari yang awal menjadi ke akhir dapat terjadi saat melakukan proses tersebut, sebagai contoh.
<?php
$string = 'HTML';
$search = ['HTML', 'CSS', 'Ruby'];
$replace = ['CSS', 'Ruby', 'Python'];
$newString = str_replace($search, $replace, $string, $count);
echo $newString; // Output: Python
echo $count; // Output: 3
Code language: HTML, XML (xml)
Pada contoh kasus diatas, $count
adalah jumlah proses yang terjadi. Alih-alih mengganti “HTML” menjadi “CSS” yang terjadi malah proses tersebut menampilkan kata “Python” sebagai pengganti HTML. Hal tersebut karena pada prosesnya kata HTML di ganti dengan CSS, dan CSS di ganti dengan Ruby, Ruby di ganti dengan Python. Sehingga mengembalikan nilai Python.
3. Pengecualian case-sensitive menggunakan fungsi str_ireplace()
Fungsi str_replace()
di PHP adalah case-sensitive, sehingga besar-kecilnya huruf sangat berpengaruh, dimana anda tidak dapat mengganti kata “Halo” jika yang di cari adalah “halo” karena keberadaan huruf “H” dan “h” yang berbeda.
Masalah tersebut dapat diselesaikan dengan menggunakan fungsi str_ireplace()
untuk menghindari case-sensitive pada string. Sebagai contoh.
<?php
$string = 'Halo, apa kabar?';
$search = "halo";
$replace = "hai";
$newString = str_ireplace($search, $replace, $string, $count);
echo $newString; // Output: hai, apa kabar?
Code language: HTML, XML (xml)
Pada kasus kode diatas kata “Halo” akan di ganti dengan “hai” namun dalam prosesnya mengabaikan perbedaan huruf besar-kecil, dimana fungsi str_ireplace()
akan mencari kata “halo” daripada “Halo”.
Demikian tutorial ini semoga bermanfaat, jika ada pertanyaan atau saran, jangan lupa tinggalkan komentar dibawah ini.
Ringkasan
- Gunakan
str_replace()
untuk mencari kata pada sebuah string. - Jika dalam kasusnya terdapat case-sensitive maka gunakan
str_ireplace()
untuk mengabaikan besar-kecilnya huruf.