Sayfa 1 - Toplam 2 12 SonSon
Bulunan 1 den 10 - Toplam 18
Switch - Case kullanımı - - Programlama - Ceviz Forum
  1. #1
    Ceviz Üyesi dehamurat Üyenin Avatarı
    Üyelik Tarihi
    11-Ekim-2004
    Mesaj
    88

    Varsayılan Switch - Case kullanımı

    Merhaba,
    Kod:
    <?
    switch ($puan) {
     case 0..2		: echo "kare1.gif"; break;
     case 3..4		: echo "kare2.gif"; break;
     case 5..6		: echo "kare3.gif"; break;
     case 7..8		: echo "kare4.gif"; break;
     case 9..10		: echo "kare5.gif"; break;
    
     default; echo "kare3.gif";
    }
    ?>
    gibi bir yapı kullanmak istiyorum ancak hatayı aşamadım. Böyle bir yapıyı tanımıyor php.

    Aslında yapmak istediğim kesirli sayı kontrolüydü ancak onda hata verince tam sayıları denedim ancak yine aynı hata ile karşılaşıyorum.

    İyi çalışmalar...

  2. #2
    Ceviz Üyesi perlci Üyenin Avatarı
    Üyelik Tarihi
    12-Eylül-2004
    Mesaj
    2,234

    Varsayılan

    PHP Kodu:
    <?
    switch ($puan) {
     case 
    0        : echo "kare1.gif"; break;
     case 
    1        : echo "kare1.gif"; break;
     case 
    2        : echo "kare1.gif"; break;
     case 
    3        : echo "kare2.gif"; break;
     case 
    4        : echo "kare2.gif"; break;
     case 
    5        : echo "kare3.gif"; break;
     case 
    6        : echo "kare3.gif"; break;
     case 
    7        : echo "kare4.gif"; break;
     case 
    8        : echo "kare4.gif"; break;
     case 
    9        : echo "kare5.gif"; break;
     case 
    10        : echo "kare5.gif"; break;

     default; echo 
    "kare3.gif";
    }
    ?>
    Ancak böyle yazarsan kullanabilirsin.
    adanzyephp.com
    PHP,CSS,AJAX,PERL

  3. #3
    Ceviz Üyesi
    Üyelik Tarihi
    29-Nisan-2006
    Mesaj
    53

    Varsayılan

    PHP Kodu:
    <?
    switch ($puan) {
        case 
    : case : case :   echo 'kare1.gif'; break;
        case 
    : case :            echo 'kare2.gif'; break;
        case 
    : case :            echo 'kare3.gif'; break;
        case 
    : case :            echo 'kare4.gif'; break;
        case 
    : case 10 :           echo 'kare5.gif'; break;
        
        default;                     echo 
    'kare3.gif';
    }
    ?>
    Böylede kullanılabilir sanırım.

  4. #4
    Ceviz Üyesi
    Üyelik Tarihi
    15-Haziran-2003
    Nereden
    Ankara
    Mesaj
    2,708

    Varsayılan

    ya da

    PHP Kodu:
    <?
    switch ($puan) {
    case 
    0        
    case 
    1        :
    case 
    2        : echo "kare1.gif"; break;
    case 
    3        
    case 
    4        : echo "kare2.gif"; break;
    case 
    5        
    case 
    6        : echo "kare3.gif"; break;
    case 
    7        
    case 
    8        : echo "kare4.gif"; break;
    case 
    9        
    case 
    10        : echo "kare5.gif"; break;

    default: echo 
    "kare3.gif";
    }
    ?>
    Msnden ve özel mesaj ile lütfen yardım istemeyin...

  5. #5
    Üyeliği İptal Edildi
    Üyelik Tarihi
    31-Mart-2006
    Nereden
    denizli
    Mesaj
    252

    Varsayılan

    en uygunu bu şekilde kullanman. aralığı daha büyük sayılarla işlem yaparken işini kolaylaştırır.

    PHP Kodu:
    switch ($puan) {
     case (
    $puan '0' && $puan <= '2')    : echo "kare1.gif"; break;
     case (
    $puan '2' && $puan <= '4')    : echo "kare2.gif"; break;
     case (
    $puan '4' && $puan <= '6')    : echo "kare3.gif"; break;
     case (
    $puan '6' && $puan <= '8')    : echo "kare4.gif"; break;
     case (
    $puan '8' && $puan <= '10'): echo "kare5.gif"; break;
     
     default; echo 
    "kare3.gif";


  6. #6
    Ceviz Üyesi
    Üyelik Tarihi
    03-Temmuz-2006
    Mesaj
    387

    Varsayılan

    case deyimi bir kontrol ifadesine göre de işlem yapabiliyorsa, emrag'ın dediği gibi birşey yapabilirsin ya da belirli sayılar arasını kontrol edecek özel bir fonksiyon yazıp function(0, 2) şeklinde kullanabilirsin.
    "...peki bu bilgi gerçek hayatta ne işime yarayacak?..."

  7. #7
    Ceviz Üyesi Guardian Üyenin Avatarı
    Üyelik Tarihi
    11-Ekim-2005
    Mesaj
    198

    Varsayılan

    ya da (devam ettirelim)
    PHP Kodu:
    if ($puan '0' && $puan <= '2')   {
    echo 
    "kare1.gif";
    }
    elseif (
    $puan '2' && $puan <= '4') {
    echo 
    "kare2.gif"
    }
    elseif (
    $puan '4' && $puan <= '6') {
    echo 
    "kare2.gif"
    }
    elseif (
    $puan '6' && $puan <= '8') {
    echo 
    "kare3.gif"
    }
    elseif (
    $puan '8' && $puan <= '10') {
    echo 
    "kare4.gif"
    }
    else
    echo 
    "kare3.gif"

    default'u 0-10 arası girdilerde bulunulmadığı zaman olarak kabul eder..
    :: İnsanoğlu kendini arar, dünya döner milim milim! Eğer göçüp gidersen bugün, yarım kalan işin var senin..
    :: samkon.org | çalışmalarım..

  8. #8
    Ceviz Üyesi DarkElder Üyenin Avatarı
    Üyelik Tarihi
    19-Şubat-2006
    Nereden
    İstanbul
    Mesaj
    121

    Varsayılan

    yada
    PHP Kodu:
    <?
    switch ( ceil($puan/2) )
    {
        case 
    :
        case 
    : echo 'kare1.gif'; break;
        case 
    : echo 'kare2.gif'; break;
        case 
    : echo 'kare3.gif'; break;
        case 
    : echo 'kare4.gif'; break;
        case 
    : echo 'kare5.gif';break;
        default; echo 
    'kare3.gif';

    ?>
    For What?

  9. #9
    Ceviz Üyesi dehamurat Üyenin Avatarı
    Üyelik Tarihi
    11-Ekim-2004
    Mesaj
    88

    Varsayılan

    Arkadaşlar verdiğiniz cevaplar için çok teşekkürler. Cevaplara baktımda istediğim gibi kullanımın olmadığını gördüm malesef. Aslında istediğim kullanım yolunu diğer programlama dillerinde kullandım ve çok daha kolaylaştırıyordu işimi. Bu şekilde if yada case' i uzatarak işlem yapmak istemediğim için sordum ve birçok yolda denedim aslında. Cevaplarınızda gösterdiki bunun çözümü uzun yoldan geçiyor

  10. #10
    Ceviz Üyesi perlci Üyenin Avatarı
    Üyelik Tarihi
    12-Eylül-2004
    Mesaj
    2,234

    Varsayılan

    Yukarıdaki örnekler en kısa yoldur. Bunun bir sakıncası varmı yada kullandığın karşılaştırma çokmu fazla. Ben bir anlam veremedim.
    adanzyephp.com
    PHP,CSS,AJAX,PERL

Sayfa 1 - Toplam 2 12 SonSon

Konu Bilgileri

Bu Konuya Gözatan Kullanıcılar

Şu anda 1 kullanıcı bu konuyu görüntülüyor. (0 kayıtlı ve 1 misafir)

Yer İmleri

Mesaj Yetkileriniz

  • Yeni konu açmaya yetkiniz yok
  • Cevap yazmaya yetkiniz yok
  • Eklenti yüklemeye yetkiniz yok
  • Mesajınızı düzeltmeye yetkiniz yok
  •