Memotong dan Menggabungkan String dengan Explode dan Implode

Ada saatnya kita ingin memisahkan string menjadi beberapa bagian dan menyimpannya dalam Array sebelum diproses. Di saat yang lain, mungkin kita ingin mengganti karakter atau kata tertentu dalam suatu string. Untuk melakukannya, kita bisa menggunakan percabangan dan perulangan. Tapi, itu tidak praktis dan memperpanjang script yang kita buat. Untuk lebih mudahnya, kita lebih baik menggunakan function yang sudah disediakan PHP.

Untuk "memecah" string menjadi beberapa bagian dengan menggunakan karakter tertentu sebagai batas dari tiap bagian string, kita bisa menggunakan explode. Setelah string dipisahkan, explode akan menyimpan dan mengembalikan potongan-potongan string tersebut dalam array yang bisa disimpan dalam variabel.

<?PHP
    $kalimat="Aku Cinta Padamu";
    $a=explode(" ",$kalimat);
    foreach($a as $key => $s){

        echo($key.".".$s."<BR />");
    }
?>




Pada contoh script di atas, kita memisahkan kalimat menjadi beberapa kata. Kemudian kita menampilkannya dalam beberapa baris menggunakan foreach dan tag <BR>.

Kita bisa memisahkannya karena adanya spasi yang memisahkan tiap kata dalam kalimat tersebut. Spasi bisa kita gunakan sebagai "pembatas" atau delimiter yang menentukan bagian-bagian yang akan dipisahkan dalam string. Dalam function explode, delimiter akan digunakan sebagai bagian yang memotong tiap bagian dalam string. Delimiter akan menghilang dan tidak akan disimpan di dalam array yang menjadi hasilnya.

Jika kita ingin mengganti delimiter, kita bisa menggunakan explode yang dilanjutkan dengan function implode() atau join(). Function implode() digunakan untuk menggabungkan isi array menjadi satu string dengan karakter tertentu di yang menghubungkan tiap anggota/elemen array. Pada contoh berikut ini, kita akan menggunakan explode untuk memisahkan satu string menjadi beberapa string yang disimpan dalam array sebelum akhirnya menggabungkannya dengan implode.

<?PHP
    $kalimat="Aku Cinta Padamu";
    $a=explode(" ",$kalimat, 3);
    $s=implode("+", $a);

    echo($s);
?>

Function implode() pada script di atas bisa diganti dengan join(). Join kegunaan dan parameternya sama dengan implode karena join hanya nama lain dari implode. Seperti dalam explode yang menggunakan "pembatas", implode() juga bisa menggunakan "pembatas" yang akan terlihat di antara tiap elemen array saat array digabungkan menjadi satu string. Pada contoh di atas, pembatas yang digunakan dalam function implode adalah tanda tambah (+).

Btw, pada contoh di atas, explode menggunakan 3 nilai sebagai parameter. Parameter ketiga pada contoh di atas adalah 3. Kalau kalian mau tahu kegunaan parameter ketiga dalam explode, coba ubah parameter yang bernilai 3 menjadi 2.

Script di atas cuma untuk contoh cara menggunakan explode dan implode. Explode dan implode bisa digunakan dengan cara yang berbeda, tidak hanya digunakan untuk mengganti karakter tertentu dalam string. Lagipula, untuk mengubah karakter tertentu dalam string, kita bisa menggunakan function str_replace() seperti di bawah ini.

<?PHP
    $kalimat="Aku Cinta Padamu";
    $s=str_replace(" ", "+", $kalimat);
    echo($s);
?>


Penggunaan str_replace tentu saja akan lebih singkat daripada explode dan implode kalau tujuannya hanya untuk mengganti bagian-bagian yang sama dalam string.

Selain explode yang memotong string berdasarkan karakter tertentu sebagai delimiter, ada juga function str_split yang memotong string menjadi beberapa bagian yang sama panjang.

<?PHP
    $kalimat="Aku Cinta Padamu";
    $a=str_split($kalimat, 3);
    $s=implode("+", $a);

    echo($s);
?>