str_replace()

Pada PHP, str_replace() adalah salah satu fungsi penting yang berguna untuk mengganti semua kemunculan suatu substring tertentu dengan substring lain di dalam sebuah string. Fungsi ini banyak digunakan untuk memodifikasi teks, membersihkan data masukan, serta mengubah pola teks sesuai kebutuhan.

Pengertian Fungsi str_replace()

Secara singkat, str_replace() akan memindai string asli untuk mencari substring yang ingin diubah, kemudian menggantinya dengan substring baru. Hasil proses tersebut dikembalikan dalam bentuk string yang sudah termodifikasi. Karena sifatnya yang mengganti seluruh kemunculan substring, str_replace() sangat membantu dalam memformat teks secara menyeluruh.

Format Penulisan (Sintaks)


str_replace(
    string|array $search,
    string|array $replace,
    string|array $subject,
    int &$count = null
) : string|array
    

Penjelasan parameter:

  1. $search: Substring yang dicari untuk diganti. Dapat berupa string tunggal atau array.
  2. $replace: Substring pengganti yang akan menggantikan $search. Jika $search berupa array, maka $replace juga sebaiknya berupa array dengan jumlah elemen yang sama.
  3. $subject: String atau kumpulan string (array) tempat proses pencarian dan penggantian dilakukan.
  4. $count (opsional): Variabel yang dapat menerima jumlah total penggantian yang terjadi. Jika Anda memerlukannya, variabel ini harus disertakan sebagai parameter keempat secara reference.

Contoh Penggunaan str_replace()

1. Menggantikan Satu Substring di Sebuah String

<?php
// String asli
$text = "Halo dunia, selamat belajar PHP!";

// Mencari substring "Halo" dan menggantinya dengan "Hi"
$newText = str_replace("Halo", "Hi", $text);

echo $newText; 
// Output: "Hi dunia, selamat belajar PHP!"
?>

Pada contoh di atas, semua kemunculan kata “Halo” dalam string akan digantikan menjadi “Hi”.

2. Menggantikan Beberapa Kata Sekaligus

<?php
$text = "Saya suka apel dan jeruk";

// Array kata yang akan diganti
$search  = array("apel", "jeruk");
// Array kata pengganti
$replace = array("mangga", "semangka");

$result = str_replace($search, $replace, $text);
echo $result; 
// Output: "Saya suka mangga dan semangka"
?>

Jika kita memiliki lebih dari satu kata yang ingin diganti, $search dan $replace dapat diisi dengan array. Urutan elemen array $replace akan menggantikan urutan elemen array $search.

3. Mengolah Seluruh Elemen Array

<?php
$arrayText = array(
    "Saya suka apel dan jeruk",
    "Buah apel sangat segar",
    "Jeruk juga enak"
);

$search  = "apel";
$replace = "mangga";

// Menggantikan "apel" dengan "mangga" untuk setiap elemen array
$resultArray = str_replace($search, $replace, $arrayText);

print_r($resultArray);
/*
Output:
Array
(
    [0] => Saya suka mangga dan jeruk
    [1] => Buah mangga sangat segar
    [2] => Jeruk juga enak
)
*/
?>

Parameter $subject bisa berupa array. Dalam contoh ini, str_replace() akan mengganti substring di setiap elemen array.

4. Mengetahui Jumlah Penggantian dengan Parameter $count

<?php
$text = "Merah putih merah biru merah";

// Menggantikan "merah" dengan "hijau" dan menyimpan jumlah penggantian
$count = 0;
$newText = str_replace("merah", "hijau", $text, $count);

echo $newText;  // Output: "Merah putih hijau biru hijau"
echo "Jumlah penggantian: " . $count; // Output: "Jumlah penggantian: 2"
?>

Jika diperlukan, kita dapat mengetahui berapa kali penggantian substring terjadi dengan memanfaatkan parameter $count. Ingat bahwa $count harus diisi sebagai referensi (menggunakan tanda ampersand di deklarasi fungsi), sehingga variable tersebut dapat menampung hasil jumlah penggantian.

Perbedaan str_replace() dengan str_ireplace()

Selain str_replace(), PHP juga menyediakan fungsi str_ireplace() yang memiliki cara kerja sama, namun case-insensitive. Artinya, str_ireplace() tidak membedakan huruf besar dan kecil dalam melakukan pencarian substring. Contoh:

<?php
$text = "Apel itu segar. APEL berwarna merah.";

// Mencari "apel" tanpa membedakan huruf besar-kecil
$result = str_ireplace("apel", "jeruk", $text);

echo $result; 
// Output: "jeruk itu segar. jeruk berwarna merah."
?>

Kesimpulan

Fungsi str_replace() merupakan salah satu alat penting dalam pemrosesan string di PHP. Dengan memahami cara kerja dan parameter yang tersedia, Anda dapat memanfaatkannya untuk mengubah teks, membersihkan data, atau sekadar menyesuaikan konten sesuai kebutuhan. Jika Anda membutuhkan pencarian yang tidak tergantung pada huruf besar atau kecil, gunakanlah str_ireplace(). Menggunakan kedua fungsi ini secara tepat akan membantu memudahkan berbagai tugas terkait manipulasi string dalam proyek pemrograman Anda.


Baca Juga :