Php ereg ve eregi komutu ( fonksiyonu ) : PHP’nin temel Düzenli İfade Fonksiyonu, ereg(), arattığımız karakter sıralanışı bulunduğu taktirde doğru, bulamadığı taktirde yanlış karşılığı bir değer verir. Fonksiyonu şöyle yazarız:
$bir_degisken = ereg(“eşleştirilecek_sıra” , $kaynak , $yeni_değişken);
Fonksiyonun aradığımız eşleştirmeyi yapması halinde, buradaki $bir_degisken’in değeri true/doğru, yapamaması halinde false/yanlış olacaktır. Eşleştirme sırasının nasıl oluşturulduğunu yukarıda gördük; bu ifadelerden işimize uygun olanı buraya tırnak içinde yazarız. $kaynak, eşleştirilecek sıralamanın içinde aranacağı değeri tutan değişkendir. Fonksiyonun bir diğer becerisi, eğer eşleştirilecek sıralamayı gruplar halinde verirsek, kaynakta yapacağı eşleştirme olursa, buna uygun değerleri bir dizi değişkene yazabilmesidir; istersek bir parametre olarak bu yeni değişkenin almasını istediğimiz adı veririz; böylece eşleştirme sonucu bulunan değerler kaydedilmiş olur.
eregi(), aynen ereg() fonksiyonu gibi çalışır; sadece eşleştireceği değerlerde büyük-harf/küçük-harf farkı gözetmez.
adıyla kaydettiğimiz konuk defteri programının akış planını, ziyaretçinin Form’a yazdığı ve sunucuda $HTTP_POST_VARS dizi-değişkeninde tutulan değişkenlerinden elektronik posta adresi ilge ilgili olanı gerçekten içinde en az bir @ işareti ile en az bir adet nokta içip içermediğine bakarak sınayabiliriz. Böyle bir sınama için gerekli kod şöyle olabilir:
if (eregi(“^.+@.+\\..+$”, $adres, $email)) {
}
else {
$hata = “Elektronik posta adresinizde bir hata var!<br>”;
echo $hata;
include(“kd_hata_halinde.htm”);
exit;
}
Program, bu örnekte $adres değişkeninde kayıtlı değerin içinde aradığı sıralamayı bulursa, eşleşen değeri $email adlı yeni bir değişkene yazacak ve if sınavının sonucu doğru olacaktır. Bu sıralamaya uygun bir değer bulunamazsa, if sınavı else deyimine atlayacak ve bir hata mesajı üretilerek, bu program durdurulacaktır. (Burada, yaptığı hayatı düzeltmesi yani geçerli bir elektronik posta adresi vermesini sağlayan yeni sayfanın, include komutu ile ziyaretçiye gönderildiğine dikkat edin. Bu programın yeni biçimi kitapçığın örnek kodları arasında kd_02.php adıyla bulunabilir.)
Pardon ama php de eregi yerine artık preg_match kullanılıyo 😀