Php Ders 4 - Döngüler.

Php ile döngüler: For, Do, While


Bu ders sonunda php ile döngüleri kullanabileceksiniz.

Döngüler tekrar eden işlemleri yapmakta kullanılır. Başlangıçta anlamsız gelebilir ama 100 üyeli bir web sayfanız varsa hepsinin adını tek tek yazmak yerine döngü kullanarak üç satırda işinizi bitirebilirsiniz.

Daha basit olduğu için FOR döngüsü ile başlayacağız. For döngüsü verilen artırma değerine göre döner. Dönerken aradaki işlemleri tekrar tekrar yapar. yazılması şu şekildedir.

for( $değişken ; dönme şartı ; her dönüşte yapılacak işlem)


$değişken: dönmeye ilk başladığı anda bir değişken üretmeyi sağlar

dönme şartı: Buradaki şart aslında bir IF komutudur. sorulan soru doğru ise dönmeye devam eder.

her dönüşte yapılacak işlem: Dönme sırasında herzaman birer birer arttırmak zorunda değilsiniz. bu işlemi değiştirip üçer üçer veya beşer beşer saydırabilirsiniz.

for
Örnek:


for ( $say=1 ; $say < 100 ; $say++ )
{

print " şu anda $say sayısındayım";

}

bu komutu çalıştırdığınızda. şöyle bir sonuç çıkar:

şu anda 1 sayısındayım
şu anda 2 sayısındayım
şu anda 3 sayısındayım
şu anda 4 sayısındayım
....

Bu şekilde 99 kere devam eder. verilen şart $say <100 olduğu için $say==100 olduğunda dönme sona erer.


Başka bir örnek: Tek sayıları yazdıralım


for ( $say=1 ; $say < 100 ; $say=$say +2 )
{

print " Tek sayılar: $say ";

}

While Döngüsü

While döngüsü üsttekinin biraz daha sade halidir. Fakat sadece sayılar için kullanılmaz. While döngüsü tek bir şarta bağlı olduğu için dikkatli kullanmak gerekir.

Yazılışı:

While (Soru)
{
// Soru doğru ise yapılacak işlem

}

örnek: $civciv örneğini tekrar yapalım.

while($civciv=="")
{
print " Açım, Çok acıktııım";
}

Bu örneği çalıştırdığınızda ekrana bir milyon kere Açım yazdığını göreceksiniz. Sebebi ise $civciv´in hiçbir zaman içi dolmuyor ve While her dönüşünde aynı soruyu soruyor, cevap Evet ise dönmeye devam ediyor.

Yukarıdaki örneği aşağıdaki şekilde değiştirdiğimizde ise sadece 10 kere dönecektir.

while($civciv < 10)
{
print " Açım, Çok acıktııım";

$civciv = $civciv + 1 ;
}

Bu örnekteki en önemli kısım aslında $civciv = $civciv + 1 satırıdır, Eğer bunu anlayabiliyorsanız programlama sizin için tamam demektir.

Şimdi bu kısma dikkatle okuyalım:

Programlama yaparken bilgisayar eşitliğin sağındaki işlemi yapar ve sol tarafa aktarır. Sağ taraftaki değişken yapılan işlemden etkilenmez.

Bu işlem sonunda $ciciv bir sayı arttırılmış olur. Diyelim ki: $civciv=5 bu işlemden sonra $civciv=6 olmuştur.

Ödev: Bu kısmı iyice düşünün ve 10 kere okuyun. Bunu çözerseniz programcı olmanın en zor kısmını geçtiniz demektir.

Soru: Aşağıdaki kodun sonucu kaç yazar.

$say=6;
$kutu= 3;

while($say < 100)
{

$kutu= 10 ;

$say = $say + $kutu;

}

print " $say ";

drekon2009-12-24 12:04:11

DMCA.com
Bookmark and Share
Hit:138864
Puan ver:

.

php_bjkcigdem

iyiymiş güzel anlatımı beğendim teşekkürler.. =)

2011-03-17 16:08:27

karamuho_58Muhammed Emin ŞAHİN

Herşeyi anlıyorum bir tek şu döngüleri anlayamıyorum.

2011-03-24 11:06:41

while ve mysql

kadir_81Kadir Malakcıoğlu

ya benm bi sorum var ben site yapıyorum.. Sitemde şöyle bir durum oluşuyor...Kullanıcılar adında veri tabanım var burda ben istediğim kadar kullanıcı ekleyebiliyorum.Bu tablonun içeriğinde ise kullanıcı adı şifresi gibi genel bilgileri var..iş bundan sonra başlıyo ..kullanıcı girişi sayfamda ben bu veri tabanından gelen kullanıcı bilgilerini while dongusu ile donfurup çekiyorum.Fakat diyelim kullanıcı şifrelerinidogru girdi Ekrana dogru girince onaylandı mesajı verdırıyorum veeee sonuç veri tabanında nekadar kullanıcı varsa o sayıda onaylandı yazıyo yani 2 tane kullanıcı varsa  2 taneyazıyo while dongusunu parantezini kısıtlıyum bu saferde sadece en son kullanıcıyıo baz alıyo yardım edin lütfen ya çözemiyorum acaba başka yol mu uygulamam lazım bilen varsa paylaşşın lutfen ayrıca mailimede yanıtı bekliyorum zor bsy degl kopyala yapıştr yapmak... Saygılar herkeze. . .

2011-03-26 11:15:00

ŞahinŞahin Alizade

106

2011-08-26 12:03:23

mazmahorMehmet Mazmahor

Allah razi olsun simdi cok iyi anladim

2011-10-13 17:38:54

Daha Yeniyim

sedaaseda dogan

phpde tablo yapıp herbirinin arkaplanı renkli olucakmış fakat bunu elimizle değilde rgb koduyla yapıcakmışız ben anlamadım bu bi ödev yardım istiorum ..

2011-10-23 17:00:22

hndhande aşkın

perfectooo

2011-11-01 15:51:04

NATURONHasan Ünlü KILINÇ
Yazan:nssasmaz

Arkadaşlar şöyle açıklayayım.

$say=6;
$kutu= 3;


while($say < 100) {

$kutu= 10 ;

$say = $say + $kutu;

}

print " $say ";

Çıktı Olarak Şu Şekildedir.. :

|- $say -|- $kutu |
-------------------
Döngüden Önce :
|--  6  --|-- 3  --|
Döngü Başlayınca :
|-- 16 --|-- 10 --|
|-- 26 --|-- 10 --|
|-- 36 --|-- 10 --|
|-- 46 --|-- 10 --|
|-- 56 --|-- 10 --|
|-- 66 --|-- 10 --|
|-- 76 --|-- 10 --|
|-- 86 --|-- 10 --|
|-- 96 --|-- 10 --|

Toplam ( Yani print " $say ";) : 106

gördüğünüz üzere $say 6 değerinden başladı ve en son verilen değer 96 oldu fakat döngü her döndüğünde değer 10 artığı için ve bir defa daha artarsa 100 ü geçeceğinden dolayı son değerde 96 + 10 = 106; oldu..

! : UNUTMAYINIZ : !

$kutu değişkeni yukarıda ne kadar 3 olarak tanımlanırsa tanımlansın işleme
( $say = $say + $kutu; ) girmeden önce değiştiğini unutmayınız.


Teşekkürler..

  güzel anlatım gerçekten ve bu arada 106'yı blmstm :)

2011-11-01 22:57:59

ipeksuesra çabukel

106

2011-11-28 18:05:41

DO DÖNGÜSÜ

emkilincemrah kılınç

Merhaba. Başlıkta for, do  ve while döngüsü yazıyor ama do döngüsü ile ilgili bir bilgiye rastlamadım. Önemli ise kısa bir bilgi verebilir misiniz? Anlatımlar ve yorumlar çok kaliteli. Biraz daha geliştirebilirsem kendimi bu sohbetlere katılmaktan zevk alacağım kesin.

2011-12-01 00:13:14

phpkodlari.com © 2009 Herkes Php öğrenecek
Eglence ve Oyun: Gamikro