PHP'de çok boyutlu bir switch
ifadesi kullanmak mümkün değildir. switch
ifadesi, genellikle bir değişkenin farklı değerlere göre farklı durumları kontrol etmek için kullanılır, ancak bu tek boyutlu bir kontrol mekanizmasıdır.
Ancak, çok boyutlu bir yapıyı ele almak istiyorsanız, genellikle iç içe geçmiş switch
ifadeleri veya if
, elseif
, else
koşulları kullanmanız gerekebilir. İşte bir örnek:
$kullaniciRol = "admin";
$kullaniciYetki = "okuma";
switch ($kullaniciRol) {
case "admin":
switch ($kullaniciYetki) {
case "okuma":
echo "Admin, okuma yetkisine sahip.";
break;
case "yazma":
echo "Admin, yazma yetkisine sahip.";
break;
default:
echo "Admin, bilinmeyen yetkiye sahip.";
}
break;
case "editor":
switch ($kullaniciYetki) {
case "okuma":
echo "Editor, okuma yetkisine sahip.";
break;
case "yazma":
echo "Editor, yazma yetkisine sahip.";
break;
default:
echo "Editor, bilinmeyen yetkiye sahip.";
}
break;
default:
echo "Bilinmeyen kullanıcı rolü.";
}
Bu örnekte, kullanıcı rolüne ve yetkisine göre farklı durumları kontrol etmek için iç içe geçmiş switch
ifadeleri kullanılmıştır. Ancak, bu tür durumlar için genellikle daha okunabilir ve yönetilebilir bir yapı olan if
, elseif
, else
koşul ifadeleri tercih edilebilir.