Kod yazarken sıklıkla kullanılan koşul belirteçleri, duruma bağlı olarak işlemler yapmamıza olanak sağlar. Genel yapıları 3 şekildedir:
1. if ( koşul ) - koşul gerçekleşirse komut uygulanır.
2. if ( koşul ) else ... - koşul gerçekleşmez ise ELSE'de belirtilenler uygulanır.
3. if ( koşul ) else if (koşul ) else ... - İlk koşul gerçekleşmezse alternatif koşullar else if ile belirtilebilir.
Aşağıdaki örnekte $islem 4 değerini alır, koşul cümlesi olarak yazdığımızda php bize bu yargının doğru olduğunu echo da belirttiğimiz cümle ile gösterir:
<?php
$islem = 2 + 2;
if ( $islem == 4 ) {
echo "2 + 2, 4 eder!";
}
?>
NOT: Koşul gerçekleşirse yapılacaklar { ... } şeklinde belirtilir. Ancak yapılacak iş tek satırlık ise direkt altına yazarak işlem yaptırtabiliriz:
<?php
$islem = 2 + 2;
if ( $islem == 4 )
echo "2 + 2, 4 eder!";
?>
Aşağıdaki örnekte koşul gerçekleşmezse ELSE ile php'ye ne yapacağını söylüyoruz:
<?php
$benim_sayim = 5;
if ( $benim_sayim == 4 )
echo "Benim sayım 4!";
else
echo "Benim sayım 4'ten farklı!";
?>
Ve son olarak araya bir koşul daha alarak yukarıda 3. yapıda bahsettiğimiz ELSE IF kullanımına bakıyoruz:
<?php
$sayi_tut = 6;
if ( $sayi_tut < 5 )
echo "Sayım 5'den küçük!";
else if ( $sayi_tut > 5 )
echo "Sayım 5'den büyük!";
else
echo "Sayım 5!";
?>
Bir değişkene bağlı koşullu işlem yaparken IF, ELSEIF, ELSEIF ... şeklinde uzunca bir komut kullanmak hem zamanımızı alır, hem php derleyiciyi yorar. Bu gibi durumlarda Switch kodu işimizi kolaylaştırır.
<?php
$secim = 3;
switch( $secim )
{
case 1:
echo "Benim sayım 1!";
break;
case 2:
echo "Benim sayım 2!";
break;
case 3:
echo "Benim sayım 3!";
break;
default:
echo "Benim sayım 1, 2 veya 3 değil!";
}
?>
Yukarıdaki örnekte görüldüğü üzere $secim değişkeninin aldığı değere göre switch komutuyla işlem yapılmasını sağladık. Burada case 1:, değişkenin hangi değerde olması durumunda işlem yapacağını bize bildirir. break;ise switch'den çıkılması gerektiğini php ye anlatmamıza yarar. default: olarak belirtilen son satır ise hiçbir koşul sağlanmadığı takdirde yapılacak işi tanımlar.
Aşağıda başka bir örnekte string (alfasayısal) bir değişkenle Switch kullandık:
<?php
$kimin = "Ali";
switch( $kimin )
{
case "Ali":
echo "Ali'nin";
break;
case "Hasan":
echo "Hasan'ın";
break;
default:
echo "Kimsenin değil!";
}
?>
Değişkenleri Bulma
Çalışma alanında mevcut olan tüm değişkenleri bilmek için ls () işlevini kullanırız. Ayrıca, ls () işlevi değişken isimleriyle eşleştirmek için desenler kullanabilir.
print(ls())
Yukarıdaki kodu çalıştırdığımızda, aşağıdaki sonucu veriyor -
[1] "my var" "my_new_var" "my_var" "var.1"
[5] "var.2" "var.3" "var.name" "var_name2."
[9] "var_x" "varname"
Not - Ortamınızda hangi değişkenlerin bildirildiğine bağlı olarak örnek bir çıktıdır.
Ls () işlevi değişken isimleriyle eşleştirmek için desenler kullanabilir.
# List the variables starting with the pattern "var".
print(ls(pattern = "var"))
Yukarıdaki kodu çalıştırdığımızda, aşağıdaki sonucu veriyor -
[1] "my var" "my_new_var" "my_var" "var.1"
[5] "var.2" "var.3" "var.name" "var_name2."
[9] "var_x" "varname"
Dot (.) İle başlayan değişkenler gizlidir, "all.names = TRUE" argümanı kullanılarak ls () işlevine göre listelenebilirler.
print(ls(all.name = TRUE))
Yukarıdaki kodu çalıştırdığımızda, aşağıdaki sonucu veriyor -
[1] ".cars" ".Random.seed" ".var_name" ".varname" ".varname2"
[6] "my var" "my_new_var" "my_var" "var.1" "var.2"
[11]"var.3" "var.name" "var_name2." "var_x"