Php ve str_replace() Fonksiyonu
str_replace() fonksiyonu kısaca bir karekter setindeki karakterleri istenilen karakterler ile değiştirir. Bu fonksiyon case-sensitive dir yani büyük küçük harfe duyarlıdır. Eğer büyük küçük harf duyarlılığı istemiyorsanız str_ireplace() fonksiyonunu kullanabilirsiniz.
Fonksiyonun söz dizimi şu şekildedir.
str_replace(değiştirmek istenilen karakter dizisi,değiştirilecek olan karakter,aranılan karakter dizisi, kaç kere değiştirme işlemi yapıldı);
Bir iki örnek yapalım.
<?php
echo str_replace("deli","harika","Yakuake deli bir olay :p");
?>
Çıktı "Yakuake harika bir olay :p" olacaktır. Gördüğünüz gibi Burda "deli" arandı, bulundu, "harika" ile değiştirildi.
<?php
$salt = "Yakuake deli deli bir olay :p";
$aranan = "deli";
$degistir = "süper";
$sonuc = str_replace($aranan,$degistir,$salt,$say);
echo $sonuc;
echo $say;
?>
Daha anlaşılır olması açısından değişkenlere atayarak yazdım.
$say değişkenini kullanmamıza gerek yok. opsiyoneldir bize kaç kez değiştirilme işlemi yaptığını söyler. Eğer $salt değişkenine bir tane daha "deli" kelimesi ilave ederseniz $say değişkeninin 2 olduğunu göreceksiniz.
str_replace() fonksiyonu ile array (dizi) lerdeki değerleride arayıp değiştirebiliriz.
<?php
$salt = array("Ubuntu","Vista","Redhat","Windows","Güzel işletim sistemleridir.");
$degistir = array("Vista","Windows");
$neyle = array("Pardus","Suse");
$sonuc = str_replace($degistir,$neyle,$salt,$say);
print_r($sonuc);
print $say." tane eleman değiştirildi";
?>
Çıktımız Array ( [0] => Ubuntu [1] => Pardus [2] => Redhat [3] => Suse [4] => Güzel işletim sistemleridir. ) 2 tane eleman değiştirildi şeklinde olacaktır.
Php ile stringler üzerinde çalışırken bu fonksiyonu hep kullanıyorum fakat kaç adet değiştirme yaptığını bilmiyordum. Manueli okumak gerekiyor :)
12/19/2009