Merhaba arkadaşlar, Bu fonksiyon aracılığıyla mail adreslerinin standart formlarda olup olmadığını kontrol edeceğiz. Eğer sunucunuzdaki PHP sürümü 5.2’den düşükse aşağıdaki fonksiyonu kullanabilirsiniz:
[sourcecode lang=”php”]<?php
function email($email){
return eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$", $email);
}
?>[/sourcecode]
Fonksiyonun kullanımı oldukça basittir. Nasıl kullanacağını gösteriyorum:
[sourcecode lang=”php”]<?php
$email="[email protected]"; // Bir email belirledik
if(email($email)==1) echo "Geçerli";
else echo "Geçersiz"; // Geçerli döndürür. Çünkü belirlediğimiz mail adresi geçerli.
?> [/sourcecode]
Eğer sunucunuzdaki PHP sürümü 5.2 ve yukarısıysa PHP grubu bizim için artık bir fonksiyon üretmiş. filter_var() fonksiyonunu FILTER_VALIDATE_EMAIL parametresiyle nasıl kullanacağımızı görelim:
[sourcecode lang=”php”]<?php
$email="[email protected]"; // Yine bir mail adresi. Gerçek
if(filter_var($email, FILTER_VALIDATE_EMAIL)) // Kullanım bu şekilde. 1 veya 0 döndürür.
echo "Geçerli";
else
echo "Geçersiz"; // Geçerli yazdırır..
?> [/sourcecode]
Ayrıca mail adreslerinizdeki zararlı karakterleri temizlemek isterseniz-ki bunun için PHP sürümünüz yine 5.2’den yüksek olmalıdır- PHP’nin ürettiği FILTER_SANITIZE_EMAIL’i deneyin:
[sourcecode lang=”php”]<?php
$email="em(ail) @adresi.com";
$email=filter_var($email, FILTER_SANITIZE_EMAIL);
echo $email; // ekran görüntüsü: [email protected]
?> [/sourcecode]
FILTER_SANITIZE_EMAIL ile [b]$-_.+!*'{}|^~[]`#%/?@&=[/b] karakterleri dışındaki bütün karakterleri temizleyebilirsiniz.
Yazar: Oral ÜNAL
PHP Developer | Laravel Enthusiast
Daha Yeni Gönderi
AJAX ile CAPTCHA Doğrulama Daha Eski Gönderi
Arama Motoru Optimizasyonu İçin Yapılacaklar
Yorumlar