Menghilangkan Spesial Karakter di Teks dengan PHP

Pada pembahasan ini aku coba sharing tentang suatu cara untuk menghilangkan / menghapus atau bisa juga mengganti suatu / semua special character di suatu teks atau suatu input user.

Sebenernya ini mungkin hal biasa bagi yang sudah master PHP  tapi aku baru nemu masalahnya ini kemaren, tapi akhirnya alhamdulillah bisa memecahkannya
Algoritma dari fungsi remove special character yang aku buat ini adalah sebagai berikut :

  1. Dapatkan inputan teks / definisi suatu teks
  2. Simbol – simbol / special character yang ada aku ganti dengan tanda ” – “
  3. Hasil dari pergantian simbol diatas, aku jadikan suatu variabel bertipe array
  4. Lakukan perulangan :
    - Cek apakah setiap elemen array tadi bernilai null / kosong
    - Jika iya, maka simpan pada suatu variabel temp ditambah dengan spasi.
    - Jika tidak lanjutkan perulangan hingga sampai batas akhir jumlah elemen array tadi
  5. Tampilkan hasil proses perulangan diatas dan selesai

Setelah sedikit penjelasan algoritma diatas, sekarang giliran kode fungsi PHP nya, silahkan pahami source code dibawah ini :

function rmSpecialChar($teks){
$a = $teks;
$b = preg_replace("/[^a-z0-9_\-\.]/i","-",$a);
$c = explode("-",$b);
for($d=0;$d<count($c);$d++){
if(trim($c[$d])!="") $e .= $c[$d]." ";
}
$e = strtolower(substr($e,0,strlen($e)-1));
$f = str_replace(" ","-",$e);
return $f;
}