Türkiyenin Paylasim PlatFormu
Merhaba Ziyaretçi Formumuzdan Daha İyi Yararlanabilmen İçin Üye Ol...
Türkiyenin Paylasim PlatFormu
Merhaba Ziyaretçi Formumuzdan Daha İyi Yararlanabilmen İçin Üye Ol...
Türkiyenin Paylasim PlatFormu
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Türkiyenin Paylasim PlatFormu

İYİ FORUMLAR,İYİ EGLENCELER...
 
AnasayfaAramaLatest imagesKayıt OlGiriş yapOyun salonu

 

 Php Dersleri ( 15.Bölüm )

Aşağa gitmek 
YazarMesaj
Admin
Administratör
Administratör
Admin


Ruh Hali : 15
Rep Gücü Rep Gücü : 18168
Rep Puanı Rep Puanı : 10

Php Dersleri ( 15.Bölüm ) Empty
MesajKonu: Php Dersleri ( 15.Bölüm )   Php Dersleri ( 15.Bölüm ) I_icon_minitimePaz Mart 29, 2009 7:36 pm

PHP'de Program Denetimi


Bilgisayar programı, belirli değerlere göre kendi izleyeceği yolu kendisi bulmalıdır. Bir Web programı da aynı mantıkla tasarlanır. PHP, bir kısmını daha önceki bölümlerde, bir kısmını da şimdi ele aldığımız araçları kullanarak, belirli durumlarda belirli istikametlere gidecek, yeri geldiğinde geri dönecek, yeri geldiğinde başka bölümlere sıçrayacak bir akış planı tasarlamamıza imkan verir.

Web programlarımızda, ziyaretçilerimizin sitemizde yaptıkları veya yapmak istediklerini bildirdikleri işe göre sayfalar, bu işlere göre sayfa içerikleri sunarız. Web programımız ziyaretçimizin hareket tarzına ve amacına uygun olarak ilerler. Bir programın akış planını kontrol etmemizi sağlayan unsurlar çoğu zaman programın kendi kendine karar vermesini sağlayan araçlardır. PHP'de program denetim unsurları, programın gidiş yönünü değiştirmemizi veya olduğu yerde durmasını ve beklemesini veya bir işi biteviye yapmasını sağlar. Bu bölümde bu araçları ele alacağız.

if Deyimi

İnsan olarak kararlarımızı hemen hemen daima "bir şey öyle ise böyle, öyle değilse şöyle davranmak" üzere almaz mıyız? PHP programında if deyimi bunu sağlar. Kelime anlamı eğer olan if deyimi ile programımızı karar almaya zorlarız. Ne var programımız bizim kadar akıllı olamayacağı için if şartının doğru veya yanlış olması durumunda ne yapacağını da ona biz söyleriz. if deyimi şöyle yazılır:

PHP- Kodu:

if ( koşullar ) {
koşullar doğru ise yapılacak işlere ilişkin komutlar
}
elseif (diğer koşullar) {
diğer koşullar doğru ise yapılacak işlere ilişkin komutlar
}
else {
diğer her durumda yapılacak işlere ilişkin komutlar
}


PHP, if ifadesinin doğru olması halinde, ifadeye ait ilk süslü parantezin içindeki komutları icra eder; bu şartlar doğru değilse, elseif deyimi ile ileri sürebileceğimiz diğer bir grup şartın doğru olup olmadığını sınayabiliriz. Bu şartlar yerine geliyorsa, PHP, elseif bölümündeki işleri icra eder.

Nihayet diğer her hangi bir durumda icra edilmesini istediğimiz komutları else bölümünde belirtiriz. PHP, if deyimi doğru değilse, deyime ait süslü parantezin içindeki işleri yapmadan yoluna devam eder; varsa elseif deyiminin şartlarını sınar; elseif bölümü yok fakat else bölümü varsa bu bölümdeki işleri icra eder. Deyimde else bölümü de yoksa, PHP yoluna if deyiminden sonraki ilk adımdan devam eder. Bunu bir örnekle belirtelim:

PHP- Kodu:

<?php
$sarki = "Son Kadeh";
if ( $sarki == "Son Kadeh" ) {
echo ("Seçtiğiniz şarkının adı: Son Kadeh!");
}
elseif ($sarki == "Batan Günes") {
echo ("Seçtiğiniz şarkının adı: Batan Günes!");
}
else {
echo ("Lütfen bir şarkı seçiniz!");
}
?>

Çoğu zaman if deyimlerini birden fazla koşulu sınayacak şekilde yazarız; bununla birlikte elseif ve else bölümleri olmadan da yazılabilir:

PHP- Kodu:

<?php
if ( $parola == "" ) {
echo ("Sitemizi gezmek için sifre yazmanız gerekir.<br>");
echo ("Lütfen sifrenizi yazın! <br>");
}
?>

Buradaki if deyimi $parola değişkeninin boş alfanümerik olması halinde ziyaretçiyi uyarak ve görevi bitecektir. Ziyaretçi bir parola yazmışsa, daha sonraki komutlar bu parolanın doğru olup olmadığını sınayabiliriz.

switch deyimi

PHP'de program akışını yönlendirmekte kullandığımız bir diğer unsur, switch deyimidir. Adı anahtar anlamına gelen switch deyimi, verilen bir değişkenin değerinin sıraladığımız koşullardan hangisine uygun olduğunu sınar ve o koşula ilişkin komutları icra eder. PHP'nin yaptığı işi bitirdikten sonra switch deyiminin dışına çıkmasını sağlayan, break komutu vardır:

PHP- Kodu:

switch ( değişken ) {
case KOŞUL-1 ;
Koşul-1 doğru olduğundan eminseniz yapılacak işlere ilişkin komutlar
break;
case KOŞUL-2 ;
Koşul-2 doğru olduğundan eminseniz yapılacak işlere ilişkin komutlar
break;
case KOŞUL-3 ;
Koşul-3 doğru olduğundan eminseniz yapılacak işlere ilişkin komutlar
break;
case KOŞUL-4 ;
Koşul-4 doğru olduğundan eminseniz yapılacak işlere ilişkin komutlar
break;
......................
......................
default:
diğer her durum, konuda yapılacak işlere ilişkin komutlar
}



switch deyimini yazarken mutlaka break ifadesini kullanmamız gerekmez; switch deyiminin akışı break ile kesilmemişse, program ilk şart yerine gelmiş olsa bile diğer şartları da sınamaya devam eder ve en sondaki default deyimine ulaşarak (default'tan sonra noktalı virgül değil iki nokta üstüste işareti olduğuna dikkat edin), bu bölümdeki komutları icra eder.

Ne var ki programcılık mantığına aykırı olabilir: bir değişkenin içeriği verdiğimiz şartlardan birini tutmuşsa, muhtemelen diğer şartları yerine getirmeyecek demektir. Bu durumda diğer koşulların sınanması gereksiz e default işlerin icra edilmesi ise hata olur. Bu deyimi de bir örnekle görelim:

PHP- Kodu:

switch ( $sarki ) {
case "Batsın Bu Dünya" ;
echo ("Seçtiğiniz şarkının adı: Batsın Bu Dünya<br>") ;
break;
case "Dilenci" ;
echo ("Seçtiğiniz şarkının adı: Dilenci<br>") ;
break;
case "Korkarım" ;
echo ("Seçtiğiniz şarkının adı: Korkarım<br>") ;
break;
case "Derbeder" ;
echo ("Seçtiğiniz şarkının adı: Derbeder <br>") ;
break;
default:
echo ("Seçtiğiniz şarkının adı bilinmiyor<br>") ;
}


Programımız, bu kodu icra ederken,, $sarki adlı değişkenin değerini, buradaki dört isimle karşılaştıracaktır. Şarkının adı, "Batsın Bu Dünya" ise ilk durum gerçekleşmiş olacak; program Browser pencerisine şarkının adını yazacak (ve muhtemelen bu sözlerini görüntüleyecek!) ve ikinci adıma break ifadesine geçecektir.

break, switch deyiminin sona ermesini sağlar; PHP yoluna, switch deyiminin kapanan süslü parantezinden sonra devam eder. Bu örnekte break ifadesi kullanılmamış olsaydı, PHP, diğer şartları da sınacak ve boşun azaman kaybedecekti; daha da garibi, en sondaki default komutu da icra edileceği için programımız Browser pencerisine hem seçilen şarkının adını, hem de "Seçtiğiniz şarkının adı bilinmiyor" yazacaktı. Bunu gözönünde tutarak, switch deyimini daima break ile birlikte yazmamız gerekir.

switch için kısa yol

Kimi zaman uzun uzadıya switch deyimi yazmamız gerekmeyebilir; bir değişkenin değerini sadece bir şarta uygunluk açısından sınamamız gerekir. Bunu soru ve iki nokta üstüste işaretleri (? ... olarak yazılan işlemci ile yaparız. Diyelim ki, Web sitemizi ziyaret eden kişinin sifre yazıp yazmadığını sıramak istiyoruz:

PHP- Kodu:

<?php
$uyari = ($parola == "" ) ? "Sifre yazmanız gerekir" : "Teşekkür ederiz" ;
echo ($uyari);
?>

Bu kod parçacığı, ziyaretçinin parola girip girmediğini $parola değişkeninin içinin boş olup olmadığına bakarak anlayacak ve $parola değişkenin içi boş ise (yani soru işaretinin sorguladığı durumun doğru olması halinde) iki nokta üstüskte işaretinden önceki metni $uyarı değişkenin içeriği haline getirecek; $parola değişkeninin içi dolu ise (yani koşul yerine gelmiyorsa, durum yanlış ise) iki nokta üstüste işaretinden sonraki metni $uyarı değişkeninin içeriği yapacaktır. Bir sonraki echo() komutu ise içeriği bu sınav sonucuna göre belirlennen $uyarı değişkeninin değerini Browser penceresinde görüntüleyecektir.
Sayfa başına dön Aşağa gitmek
 
Php Dersleri ( 15.Bölüm )
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» Php Dersleri (14.Bölüm)
» Php Dersleri (16.Bölüm)
» PHP Dersleri (1. Bölüm)
» Php Dersleri (17.Bölüm)
» Php Dersleri (2.Bölüm)

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
Türkiyenin Paylasim PlatFormu :: Webmaster :: Php Hakkında-
Buraya geçin: