mannaxxx 1
mannaxxx
Agora Metin2 1
Agora Metin2
[DEV]AB 1
[DEV]AB
kaptanmikro1 1
kaptanmikro1
Hikaye Ekle

Temel PHP Dersleri

  • Konuyu başlatan Konuyu başlatan Fmulti
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 14
  • Görüntüleme Görüntüleme 1K

Türkiye'de ilk Mobil & PC Aynı Anda Metin2 Oyna. Triarchonline kalıcı ve uzun ömürlü yapısı ile 24 Temmuz'da açılıyor. | 1-99 Mobil Metin2 Triarch HEMEN TIKLA!

PHP - Sessions

PHP dilinde Session , bir kullanıcı için ayar değişiklikleri ve hakkındaki bilgileri , almak ve özelleştirmek için kullanılır.Session değişkenleri ,sadece tek kullanıcı hakkında veri tutar ve işlem yapabilir ayrıca bütün sayfalar dahilinde tek kullanıcı hakkında uygulama yapar.

PHP Session Değişkenleri

Bir proje üzerinde çalışırken , proje açarsınız, bazı gerekli değişiklikleri yaparsınız ve sonrasında uygulamayı kapatırsınız.PHP’ de Session da aynı bu şekildedir.Bilgisayar sizin kim oldugunuzu bilir,ve uygulamalarınıza ne zaman başladığınızı ve sona erdirdiğinizi takip eder.Ama internet üzerinde bu konuda bir sorun meydana gelir; Web sunucusu sizi ve neler yaptığınızı tanıyamaz, çünkü HTTP adresi bu durumu sağlayamaz.
PHP Session , server üzerinde yapılan son uygulamayı,bilgileri(Örn; kullancı adi, alışveriş bilgileri…) yerleştirerek bu sorunu ortadan kaldırır.
Session bilgileri kullanıcı siteden ayrıldıktan sonra silinir.Eğer sürekli bir takip isterseniz veritabanına verileri kaydetmeniz mümkündür.
Session her ziyaretçi için bir id(UID) numarası atar ve bütün bilgileri bu id e göre yerleştirir.UID numarası aynı zamanda çerezlere de kaydedilir veya URL’ e yerleştirilir.

Session Başlatmak

Session bilgilerini kaydetmeden önce, Session başlatmak gerekir.Not: session_start() fonksiyonu <html> tagından önce yazılmalıdır:

PHP:
<?php session_start(); ?>
<html>
<body>
</body>
</html>

Yukarda yazılan kod kullanıcıya ait bir Session açar ve kullanıcı hakkındaki bilgileri önceki konumuzda anlattığımız gibi UID numaralarına göre kaydetmeye başlar.

Session Değişkenini Yerleştirmek

$_SESSION değişkenini yerleştirmenin ve düzenleme yapmanın yolu örneğimizdedir, buyrun bakalım hemen;

PHP:
<?php session_start();
//session verilerini yerlestir
$_SESSION[’views’]=1;
?>
<html>
<body>
<?php
// session verilerini duzenle
echo “Sayfa gösterimi=”. $_SESSION[’views’];
?>
</body>
</html>

Sayfa gösterimi=1
Yukardaki örnekte , basit bir sayfa gösterim sayacı tasarladık. isset() fonksiyonu ile “views” değişkeninin kaydedildiğini kontrol edelim. “views” değişkeni yapılandırıldıysa ,sayacımızı arttırabiliriz. Eğer değişkenimiz yoksa,”views” adıyla yeniden yapılandırıyoruz ve değerini 1 olarak atıyoruz:

PHP:
<?php
session_start();
if(isset($_SESSION[’views’]))
$_SESSION[’views’]=$_SESSION[’views’]+1;
else
$_SESSION[’views’]=1;
echo “Gösterim=”. $_SESSION[’views’];
?>

Session Yoketmek

Session’ımızı yoketmek veya sona erdirmek için unset() yada session_destroy() fonksiyonlarını kullanacağız.Session dahilinde oluşan belirli bir değişkeni silmek için unset() fonksiyonunu kullanıyoruz;

PHP:
 <?phpunset($_SESSION[’views’]);?>

Session’a ait tüm verileri yoketmek için session_destroy() fonksiyonunu kullanıyoruz:

PHP:
 <?phpsession_destroy();?>

Not: session_destroy() tüm session u sıfırlar ,böylece kaydedilen tüm veriler yokolur.
 
PHP- Email

PHP yazacağımız yardımıyla direct olarak e-mail gönderebilir

mail() Fonksiyonu

mail() fonksiyonu yazılan kod içinde e-mail gonderen bir fonksiyondur.

Basit Bir E-Mail İşlemi

E-mail göndermenin en basit yolu text mail yollamaktır.Aşağıdaki örnekte; öncelikle değişkenleri($to, $subject, $message, $from, $headers ) tanımlıyoruz, ardından mail göndermek için tanımlanan değişkenleri kullanıyoruz;

PHP:
<?php$to = “birisi@example.com”;$subject = “Test mail”;$message = “Merhaba! Bu basit bir deneme mailidir.”;$from = “atilla@serpito.com”;$headers = “Kimden: $from”;mail($to,$subject,$message,$headers);echo “Mail Gönderildi.”;?>

Mail Form

PHP kullanarak, web sitenize bir iletişim formu oluşturabilirsiniz. Aşağıdaki örnekten formda yazılan mail ,belirli bir e-mail adresine gönderiliyor:

PHP:
<html><body><?phpif (isset($_REQUEST[’email’])){//email gönder$email = $_REQUEST[’email’] ;$subject = $_REQUEST[’subject’] ;$message = $_REQUEST[’message’] ;mail( “herhangibiri@example.com”, “Subject: $subject”,$message, “From: $email” );echo “Mail formumuzu kullandığınız için teşekkür ederiz”;}else{echo “<form method=’post’ action=’mailform.php’>Email: <input name=’email’ ******’text’ /><br />Subject: <input name=’subject’ ******’text’ /><br />Message:<br /><textarea name=’message’ rows=’15&#8242; cols=’40&#8242;></textarea><br /><input ******’submit’ /></form>”;}?></body></html>

Örneğimizi aşama aşama inceleyelim;
  • İlk olarak, email girdi bölümünün dolu olduğunu kontrol et
  • Doldurulmamış ise ( sayfa ilk defa açılıyor gibi sıfırdan formu göster)
  • Mesaj girdileri doldurulduktan sonra;formdan e-maili gönder
  • Girdiler dolu ise ,sayfa yeniden yüklenir,e-mail formu yeniden sıfırlanır,ve maili gönderir
 
PHP - İstisna Yönetimi

İstisna yönetimi , özel bir hata oluştuğu zaman kodun akışını değiştirebilir.

Exception(İstisna) Nedir?

PHP 5 ile birlikte hataları kontrol etmek için nesneye yönelik bir yaklaşım ortaya çıktı.
Hata ayıklama durumları hata oluştuğu anda işletilecek kodun normal akışını değiştirerek yönetilmesini sağlamaktadır.Buna ististan yönetimi adı verilir.
İstisna tetiklendiği anda şu aşamalar gerçekleşir;

  • Varolan kod durumu kaydedilir.
  • Kod işletimi önceden tanımladan hata ayıklama bloğuna atlayacaktır.
  • Duruma göre , hata ayıklama sonunda , ya en son işletilen kod bloğuna yeniden dönerek devam edecek, yada hata ayıklama bloğunda belirtilen aşamadan devam edecektir.

Şimdi farklı hata ayıklama yöntemlerini inceleyelim:

  • Basit istisna kullanımı
  • Özel istisna ayıklayıcı tasarlamak
  • Çoklu istisnalar
  • Tekrarlı istisna göndermek
  • Yüksek seviye istisna ayıklayıcı ayarlamak

Not: İstisnalar yanlızca hatalı oluşması durumunda kullanılmalıdır.Ayrıca kodun herhangi bir noktasına atlaması için kullanılmamalıdır.

Basit Exception(İstisna)

Bir istisna fırlatıldığında , devamındaki kod çalışmaya devam etmez, PHP gönderilen parçada “catch” ifadesi arar. “catch” ifadesi throw edilen istisnayı yakalar..

Eğer istisna hedefte yakalanamazsa , fatal error(ölümcül hata) oluşur.Hata notu “Uncaught Exception” - “Yakalanamayan istisna” olarak görülür.
Şimdi yakalanmayan bir istisna tasarlayalım;

PHP:
<?php//istisna fonksiyonu tanımlayalımfunction checkNum($number){if($number>1){throw new Exception(”Değer 1 veya birden az olmalı”);}return true;}//istisnayı tetiklecheckNum(2);?>

Yukarıdaki kodu çalıştırırsak , aşağıdaki gibi bir hata ile karşılaşırız:

PHP:
Fatal error: Uncaught exception ‘Exception’with message ‘ Değer 1 veya birden az olmalı ‘ in C:\webfolder\test.php:6Stack trace: #0 C:\webfolder\test.php(12):checkNum(28) #1 {main} thrown in C:\webfolder\test.php on line 6

Throw ve catch İfadeleri

Yukarıdaki gibi hatalarla uğraşmamak için ,uygun bir istisna yönetimi tasarlamamız gerekir.
Uygun bir istisna aşağıdaki ifadeleri içerir:

  • Try - istisna tanımlanan fonksiyon “try” bloğunda bulunur.İstisna gönderilmezse,kod çalışmaya devam etmez.İstisna tetiklenirse , try bloğundan fırlatılır ve adrese yönelir.
  • Throw -İstisnanın tetiklediği bloktur.Her throw ifadesi en az bir catch ifadesine sahip olmalıdır.
  • Catch - “catch” bloğu istisnanın yakalandığı ve tetiklendiği şekilde çalıştırıldığı bloktur.
Bir İstisna yi geçerli bir kod ile tetikleyelim:

PHP:
<?php//istisna fonksiyonu oluşturalımfunction checkNum($number){if($number>1){throw new Exception(”Değer 1 veya daha az olmalıdır.”);}return true;}// “try” bloğunda istisnayı tetikleyelimtry{checkNum(2);//istisna fırlatıldığında,bu kod çalışmayacaktır.echo ‘Bunu görüyorsanız,değer 1 den kucuk demektir’;}//İstisna yakalacatch(Exception $e){echo ‘Message: ‘ .$e->getMessage();}?>

Kod aşağıdaki gibi bir hata mesajı yayınlayacaktır:

Message: Değer 1 veya daha az olmalıdır

Örnek Açıklaması:

Yukardaki kod, istisya fırlatır ve yakalar;
  • checkNum() fonksiyonu yaratıldı. Fonksiyon değerin 1 den büyük yada küçük olduğunu denetler.Ve istisna fırlatılır.
  • checkNum() fonksiyonu try bloğunda çağırıldı.
  • checkNum() daki istisna fırlatıldı
  • “catch” bloğu istisnayı ele alır ve istisna bilgilerini içeren $e nesnesini yaratır.
  • İstisna nesnesi tarafından getMessage() fonksiyonu ile hata mesajı yayınlanır.

Custom Exception(İstisna) Sınıfları Oluşturmak

Özel istisna sınıfları oluşturmak son derece basittir. PHP de oluşacak hataları yönetmek için fonksiyonlar içeren sınıf oluşturuyoruz.
Özel istista sınıfımız PHP istisna yönetim sınıfından kalıtılır,ve tüm özelliklerini kullanabilir.Ayrıca kendimize göre de fonksiyon ekleyebiliriz.
İstisna sınıfı oluşturalım:

PHP:
<?phpclass customException extends Exception{public function errorMessage(){//Hata mesajı$errorMsg = ‘Error on line ‘.$this->getLine().’ in ‘.$this->getFile().’: <b>’.$this->getMessage().’</b>geçersiz e-mail adresi’;return $errorMsg;}}$email = “birisi@kodadiweb.com”;try{//denetleif(filter_var($email, FILTER_VALIDATE_EMAIL) === FALSE){//email adresi geçersiz ise istisna fırlatthrow new customException($email);}}catch (customException $e){//özel mesajı yayınlaecho $e->errorMessage();}?>

Örneğimizi Açıklayalım;

Yukardaki kod örneğimiz özel bir istisna sınıfı ile , istista fırlatır ve yakalar.

  • customException() sınıfı PHP öntanımlı “Exception” sınıfından kalıtılmış bir istisna sınıfıdır.
  • errorMessage() function oluşturulur.e-mail adresi yanlış ise bir hata mesajı döndürür.
  • $email string yapısında tanımlanan geçerli bir email adresini tutar.
  • “try” blogu çalıştırılı ve e-mail adresi geçersiz ise istisna gönderilir.
  • “catch” bloğu istista yöntemini yakalar ve hata mesajını yayınlar.

Çoklu İstisnalar

Birden fazla istisnaları yönetmek ve uygulamak PHP script I için mümkündür.
Birkaç if..else bloğu ve switch kullanarak çoklu istisnaları uygulayabiliriz.Bu istisnalar, farklı istisna sınıflarını kullanabilir ve farklı hata mesajları yayınlayabilirler:

PHP:
<?phpclass customException extends Exception{public function errorMessage(){//hata mesajı$errorMsg = ‘Error on line ‘.$this->getLine().’ in ‘.$this->getFile().’: <b>’.$this->getMessage().’</b> geçersiz e-mail adresi’;return $errorMsg;}}$email = “birisi@kodadiweb.com”;try{//denetleif(filter_var($email, FILTER_VALIDATE_EMAIL) === FALSE){// email adresi yanlış ise istisna gönderthrow new customException($email);}// “birisi” ni mail adresinde ararif(strpos($email, “örnek”) !== FALSE){throw new Exception(”$email örnek bir mail adresidir”);}}catch (customException $e){echo $e->errorMessage();}catch(Exception $e){echo $e->getMessage();}?>

Örneği Açıklayalım:

Yukardaki kod iki durumda ve iki istisna fırlatma işlemini yorumlar ve denetler;customException() sınıfı PHP Exception sınıfndan kalıtılır.Kalıtılan Exception sınıfın bütün methodlarını ve özelliklerini kullanabilir.(Class Konusunda daha detaylı işleyeceğiz)errorMessage() oluşturuldu .Verilen email adresinin yanlış olması durumunda bu fonksiyon hata mesaını yayınlar.$email değişkeni String tabanlıdır ve “birisi” stringini tutar.“try” bloğu çalıştırılır ve ilk durumda istisna fırlatılmaz.İkinci koşulda “birisi” Stringini gördüğü anda istisnayı tetikler.“catch” bloğu istisnayı yakalar ve hata mesajını doğrular.customException yakalanmaz ise , sadece basit istisna yakalanır ve catch bloğunda tutulur.

Exceptions(İstisna) nın Tekrar Fırlatılması

Bazı durumlarda , bir istisna fırlatıldığında ,normal olan yoldan farklı bir şekilde istisnayı tutmanı gerekebilir. Böyle durumlarda bir “catch” bloğuyla ikinci tekrarda istisna fırlatabilirsiniz .
Script sistem hatalarını kullanıcıdan saklayabilir.Bu hatalar kullanıcıyı ilgilendirmez ama programcı için çok önemlidir.Bu durumu kolaylaştırmak için bir kullanıcıya tekrar istisna fırlatarak samimi bir mesajla kullanıcıya gösterebilirsiniz:

PHP:
<?phpclass customException extends Exception{public function errorMessage(){//hata mesajı$errorMsg = $this->getMessage().’ is not a valid E-Mail address.’;return $errorMsg;}}$email = “birisi@kodadiweb.com”;try{try{// “birisi” ni mail adresinde denetleif(strpos($email, “example”) !== FALSE){//mail geçersiz ise istisna fırlatthrow new Exception($email);}}catch(Exception $e){//tekrar fırlatthrow new customException($email);}}catch (customException $e){//özel mesajı yayınlaecho $e->errorMessage();}?>

Örneği Açıklayalım:

Yukardaki kod email adresinin “birisi ” stringini içerip içermediğini denetler ,içeriyor ise istisna tekrar gönderilir:

  • customException() sınıfı PHP Exception sınıfndan kalıtılır.Kalıtılan Exception sınıfın bütün methodlarını ve özelliklerini kullanabilir
  • errorMessage() oluşturuldu .Verilen email adresinin yanlış olması durumunda bu fonksiyon hata mesaını yayınlar.
  • $email değişkeni String tabanlıdır ve “birisi” stringini tutar.
  • “try” bloğu içindeki birbaşka try bloğu koşulu denetler ve tekrar istisna gönderir
  • E-mail içeriğinde “birisi” stringi bulunduğunda istisna tetiklenir
  • “catch” bloğuistisnayı yakalar ve tekrar bir “customException” gönderir
  • “customException” yakalanır ve hata mesajı yayınlar

İstisna yakalanamazsa , try bloğunun dışına çıkar ve üst blokta aramaya başlar.

Üst Seviye İstisna Yakalayıcı Tasarlamak

set_error_handler() fonksiyonu ile kullanıcı tanımlı fonksiyonları kullanarak yakalanamayan istisnaları yakalar.

PHP:
<?phpfunction myException($exception){echo “<b>Exception:</b> ” , $exception->getMessage();}set_exception_handler(’myExceptio n’ );throw new Exception(’Yakalanamayan İstisna oluştu);?>

Yukarıdaki kodun çıktısı şu şekilde görülür:

PHP:
Exception: Yakalanamayan İstisna oluştu

İstisna Kuralları

  • İstisnalar açısından yakalanabilirliği kolaylaştırmak için try bloğunun içinde olabilir.
  • Her try yada “throw” bloğu en az bir adet catch bloğuyla ilişkilendirilmeli
  • Birden fazla catch bloğu farklı istisna sınıflarını yakalamak için kullanılabilir.
  • İstisnalar try bloğunun içinde bulunan catch bloğuna fırlatılabilir.
Basit bir kural: Bişey fırlatıyorsanız , onu yakalamalısınız.
 
PHP - Filtreler

PHP filtresi , kullanıcı girdileri gibi güvensiz kaynaklardan alınan verileri filtreleme işlemini gerçekleştirir.

PHP Filtre Nedir?

Güven vermeyen kaynaklardan alınan verileri filtreleme yapmamız gerekir.Verileri doğrulama, test etme ve filtreleme tüm web uygulamalar için önemli bir aşamadır.Php filter özelliği , kolay kullanıma sahip bir şekilde diyazn edilmiştir.

Neden Filtre Yapmalıyız?

Çoğunlukla tüm web uygulamaları harici veri girişleri üzerine işlem yapmaktadır.Genellikle kullanıcıdan yada başka bir uygulamadan alınan veriler kullanılır. Filtreleme yaparak projelerimize güvenilir ve doğru bir veri giriği sağlarız.

Dışardan alınan tüm verileri filtreleme yapmanız tavsiyemdir!! İnput filtreleme web uygulamaları için en önemli güvenlik aşamasıdır.

Harici Veri Ne Demektir?

  • Formdan alınan veriler
  • Çerezler(Cookies)
  • Web Servis Verileri
  • Sunucu Değişkenleri
  • Veritabanı sorgu sonuçları

Fonksiyon ve Filtreler

Bir değişkeni filtrelemek için aşağıdaki filter fonksiyonlar kullanılır:
  • filter_var() - özel bir filter ile bir değişkeni filtreler
  • filter_var_array() - Birden fazla veriyi , aynı veya farklı filtreler ile filtreler
  • filter_input - Bir girilen veriyi alır ve filtreler
  • filter_input_array - Birden fazla girdileri alır , aynı veya farklı filtreler ile filtreler

Aşağıdaki örnekte, integer sayıyı filter_var() fonksiyonu ile filtreliyoruz,bakalım;

PHP:
<?php$int = 123;if(!filter_var($int, FILTER_VALIDATE_INT)){echo(”integer geçersiz”);}else{echo(”integer geçerli”);}?>

Yukardaki kod, “FILTER_VALIDATE_INT” özelliğini kullanarak değişkeni filtreler.İnteger sayının geçerli olduğunu belirttikten sonra , ekrana “integer geçerli” yazdırır.
Eğer integer değişkenimiz yerine “123abn” gibi bir değer deneseydik, ekran çıktımız, “integer geçersiz” yazılacaktı.

Doğrulama ve Sterilize Etme

İki filter türü vardır;

Filtre Doğrulama:
  • Kullanıcı girdilerini doğrulamak için kullanılır
  • Katı format format kuralları (URL yada E-Mail değerleri gibi)
  • Başarı halinda beklenen durum döner, aksi takdirde FALSE değeri döndürür.

Filtreleri Siterilize Etme

  • string içinde izin verilen veya izinsiz karakterleri ayırır
  • Veri format kuralı yok
  • Herzaman string döndürür

Seçenekler ve Flag

  • Seçenekler ve Flaglar filtrelere eklenerek özelleştirir.
  • Farkli filtreler farklı seçeneklere ve flaglara sahiptir.

Aşağıdaki örneğimizde , bir integer(tamsayı) değerini fiter_var() fonksiyonu min_range ve max_range secenekleri ile doğrulayalım:

PHP:
<?php$var=300;$int_options = array(“options”=>array(“min_range”=>0,“m ax_range”= >256));if(!filter_var($var, FILTER_VALIDATE_INT, $int_options)){echo(”Integer geçersiz”);}else{echo(”Integer geçerli”);}?>

Yukarda tasarladığımız kod örneğinde options dizisi ile ilişkili seçenekleri kullandık.Seçenek değil de sadece bir flag kullanıyor ise dizi kullanmamıza gerek yoktur.
integer değeri “300&#8243; , bu değer verilen özelliklere(min_range , max_range) uymadığı için “integer geçersiz” çıktısını göreceğiz.

Input(girdi) Doğrulama

Tasarladığımız formdan alına verileri doğrulayalım.Öncelikle girilen verilerde aradığımız veri özelliklerini arayıp ve onaylamamız gerekir.
Daha sonra , verileri filter_input() fonksiyonu ile filtreleyim.
Aşağıdaki örnekte, input verisi olan “mail” stringi PHP dosyasına gönderiliyor; şöyleki:

PHP:
<?phpif(!filter_has_var(INPUT_GET, “email”)){echo(”Girilen veri türü yanlış”);}else{if (!filter_input(INPUT_GET, “email”, FILTER_VALIDATE_EMAIL)){echo “E-Mail geçersiz”;}else{echo “E-Mail geçerli”;}}?>

Örneği Açıklayalım;

Örneğimizde bir “email” değişkenini GET metodu kullanarak gönderiyor.
“email” girdi verisi “GET” metoduyla tanımlanan verü türüne uyuyor mu kontrol ediyor.
İnput değişkeni uyuyorsa, email adresinin doğruluğunu kontrol ediyor.

Input Sterilize

Formdan gelen URL adresini sadeleştirelim.
Önce aranılan verinin bulunduğunu kontrol ediyoruz;
Girilen veriyi filter_input() fonksiyonu ile sterilize ediyoruz.
Örneğimizde , “url” verisi PHP sayfasına gönderiliyor:

PHP:
<?phpif(!filter_has_var(INPUT_POST, “url”)){echo(”Girilen veri türü yanlış”);}else{$url = filter_input(INPUT_POST,“url”, FILTER_SANITIZE_URL);}?>

Örneği Açıklayalım;

“POST” metoduyla , alınan verimizi sayfaya gönderiyoruz.:
girdi verisinin varlığını kontrol ediyoruz.
veri bulundu ise,URL değerinin siterilize ediyoruz, URL standartlarına uymayan karakterleri temizleyerek URL değerini gönderiyoruz.
“ şeklinde bir “url” değeri sterilize edildikten sonra, kayıt edilir

Çok Girdileri Filtreleme

Formlar çoğunlukla birden fazla veri alan input alanları kullanılır. filter_var() veya filter_input() fonksiyonlarını her input alanında tekrar tekrar kullanmanın anlamı yoktur.
Bu örneğimizde filter_input_array() fonksiyonu ile çok input değerlerinini filtreleyelim:

PHP:
<?php$filters = array(“name” => array(“filter”=>FILTER_SANITIZE_STRING),“age ” => array(“filter”=>FILTER_VALIDATE_INT,“options ”=>arr ay(“min_range”=>1,“max_range”=>120)),“em ail”=> FILTER_VALIDATE_EMAIL,);$result = filter_input_array(INPUT_GET, $filters);if (!$result[”age”]){echo(”Yaş değeri 1 ve 120 arasında olmalı.<br />”);}elseif(!$result[”email”]){echo(”E-Mail geçersiz.<br />”);}else{echo(”Kullanıcı girdisi geçerli”);}?>

Örneği Açıklayalım;

Yukarıdaki örneğimizde 3 input bölümü(name , age, email) buluyor ve bu girdiler GET metoduyla gönderiliyor;

  • özelleştirilecek olan input değişkenleri içeren bir dizi oluşturuyoruz.
  • filter_input_array() fonksiyonu çağrılıyor,
  • “age” ve “email” değişkenleri $result kümesinde içerikleri kontrol edilir. filter_input_array() fonksiyonu çağrılır ve filtreleme gerçekleşir.

filter_input_array() fonksiyonun ikinci parametresi bir dizi veya tekil bir filter ID’e sahip olabilir.

Filtre Geri Çağırma

Programcı tarafından tanımlanan bir fonksiyonu FILTER_CALLBACK filtresi ile yeniden filtreleme yapabiliriz.
Şimdi kendi fonksiyonumuzu tanımlayalım ve varolan PHP fonksiyonu içinde kullanalım.
Aşağıdaki örneğimizde , tanımlanan fonksiyonu yeniden filtreleyerek “_” karakteri ile isimlendiriyoruz:

PHP:
<?phpfunction convertSpace($string){return str_replace(”_”, ” “, $string);}$string = “******_çok_yakışıklı_biri!”;echo filter_var($string, FILTER_CALLBACK,array(”options”=>”convertSpa ce”)); ?>

Kodumuzun ekran çıktısı şu şekilde olur:

****** çok yakışıklı biri!

Örneğimizi Açıklayalım:

Örneğmiz tüm “_” karakterlerini space’e (yani boşluk) dönüştürüyor .
Dönüşüm için bir fonksiyon tasarla
filter_var() fonksiyonunu FILTER_CALLBACK filtresi ile birlikte dizi işleminde kullanılıyor.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst