Mengganti Kata Di PHP Dengan Fungsi str_replace()

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|arrayCode language: PHP (php)

Penjelasan singkat mengenai parameter yang ada di str_replace():

  • $search adalah nilai atau kata yang ingin dicari, dapat berupa string atau array.
  • $replace adalah kata atau string yang akan menggantikan nilai $search apabila ditemukan, dapat berupa string atau array.
  • $subject adalah string atau kata utama untuk dicari dan diganti dengan string atau kata lain, dapat berupa string atau array.
  • $count mengeluarkan jumlah penggantian yang dilakukan oleh proses fungsi str_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.

Perlu diperhatikan bahwa fungsi 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: 3Code 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.

Komentar

Selamat, anda berkesempatan menjadi komentator pertama di artikel ini. Punya pertanyaan atau saran? Silahkan tinggalkan komentar untuk memulai diskusi.
Terima kasih telah memilih untuk meninggalkan komentar. Harap diingat bahwa semua komentar dimoderasi sesuai dengan kebijakan, dan informasi anda TIDAK akan dipublikasikan. Harap JANGAN gunakan kata kunci di kolom nama. Mari kita buat diskusi yang menarik dan bermakna.

Tinggalkan komentar

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

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.