1. sayfa (Toplam 1 sayfa)

Php'de Koşullu İfadeler (if...else, ternary)

Gönderilme zamanı: 26 Ağu 2024 23:25
gönderen trasmus
Php de koşullu ifadeler aşağıdaki gibi bir kalıpta yazılırlar:

if ( Koşul ) { Çalıştırılacak komut vb. ;}

Koşul gerçekleşmezse başka bir koşullu ifadeyi isteğe bağlı çalıştırılabilirsiniz:
elseif ( Koşul ) { Çalıştırılacak komut vb. ;}

Eğer Koşullarınızdan hiçbiri gerçekleşmemişse aşağıdaki kod bloğunu isteğe bağlı olarak kullanabilirsiniz:
else { Çalıştırılacak komut vb. ;}

Yalnız son koşullu ifade bloğunda dikkat ettiyseniz "Koşul" kısmı yok. Bunun nedeni hiçbir koşulumuz karşılanmazsa bunu çalıştır manasındadır. ilk if bloğu dışındaki kod blokları isteğe bağlıdır, isterseniz yazmayabilirsiniz. Kodlarınız sorunsuz çalışır.

Örnek bir if bloğu:

Kod: Tümünü seç

$kosul = 40;
if ($kosul <= 20) {
	echo "Koşulunuz 21'den küçüktür";
}elseif ($kosul <= 40) {
	echo "Koşulunuz 20'den büyük, 41'den küçüktür";
}else {
	echo "Koşulunuz 40'dan büyüktür";
}
Not: Yukarıdaki kodları javascript'e de küçük değişikliklerle uyarlanabilir, blok kullanımı benzer yapıdadır.

Re: Php'de Koşullu İfadeler (if...else)

Gönderilme zamanı: 27 Ağu 2024 00:39
gönderen admin
Teşekkürler.

Alternatif olarak destek olması açısından aşağıdaki linkten faydalanabilir.

Temel PHP Öğrenelim

viewtopic.php?t=67

If Else Deyimi

viewtopic.php?p=135#p135

Re: Php'de Koşullu İfadeler (if...else)

Gönderilme zamanı: 27 Ağu 2024 02:27
gönderen trasmus
admin yazdı: 27 Ağu 2024 00:39 Teşekkürler.

Alternatif olarak destek olması açısından aşağıdaki linkten faydalanabilir.

Temel PHP Öğrenelim

viewtopic.php?t=67

If Else Deyimi

viewtopic.php?p=135#p135
Konuyu biraz inceledim, Aşağıda öneri olarak gördüğüm eksiklikler/eklemeleri yazdım:

- Değişken tanımlama kuralları: Sayı ile başlayamaz, sadece sayıdan oluşamaz. Türkçe karakter içeremez(Sadece ingiliz alfabesindeki harfler olmalı).

- Şu mesajında hata var. İnteger ve string gibi iki ayrı tipteki veri "." ile birleştirilebilir. Çıktısı ise string olur. Hatta biri integer diğeri string tipinde tanımlanan sayılarla direkt 4 işlem yapabilirsiniz, sonuç integer olur.

- Şu mesajındaki strpos() fonksiyonunun çıktısı ile ilgili ayrıntıyı biraz daha açman iyi olurdu. Koşullu ifade kullanırken strpos kullanılacaksa çıktının 0 olması false olarak yorumlanabilir ve bu yüzden çeşitli hatalarla karşılaşabiliriz. Bunu önlemek için çıktının tip kontrolü yapılmalıdır. Örn: if (strpos( $kelime, "yazilim") !== false) {echo "Kelime bulundu";}
Ayrıca büyük ve küçük harf duyarsız arama yapmak için stripos fonksiyonunu kullanabiliriz.

- Şu mesajındaki Foreach döngüsüne şunu da ekleyebilirsin: dize değerleri key:value şeklinde olsaydı foreach( $sayilar as $key => $value ) {
echo "Anahtar adı: " . $key . " Değeri: ".$value;
}

- Fonksiyon kullanımında önce fonksiyonun tanımı yapılması sonrasında da çağrılması daha mantıklı olacaktır. Fonksiyonların çıktısını direkt ekrana basılabiliriz ancak bir değişkende değerini depolayıp ordan çağırmak daha güzel olacaktır. return ile ilgili bir örnek eklenebilir. Ayrıca global değişken kullanımı da bu konu altında gösterilebilir.

Re: Php'de Koşullu İfadeler (if...else)

Gönderilme zamanı: 27 Ağu 2024 02:37
gönderen admin
Öneri ve eklemelerin için sağ ol. Temel olması açısından kısa kısa geçmiştim. Detaylı bir içerik değil maalesef. Burada ki amaç basit ve yüzeysel bir şeyler karalamaktı. Vaktin olursa o konu altına eklemelerini ve genişletmelerini yapabilirsin. Çok hoş olur.

Re: Php'de Koşullu İfadeler (if...else, ternary)

Gönderilme zamanı: 29 Ağu 2024 17:03
gönderen trasmus
Eğer koşullu ifadenizi tek satırda yazmak istiyorsanız Php'de bunun için ternary operatörünü kullanabilirsiniz.

Kod bloğu şu şekilde olmalı:
(Koşul) ? "Durum 1 " : "Durum 2" ;

Örnek bir kod bloğu:

Kod: Tümünü seç

$fiyat = 750 ;
print ($fiyat < 500) ? ("Ürünün fiyatı 500 TL altında.") : ( "Ürünün fiyatı $fiyat TL . Satın almak için uygun değil.");
Yukarıdaki kodun çıktısı: Ürünün fiyatı 750 TL . Satın almak için uygun değil.