• 08-09-2007, 16:46:57
    #1
    Üyeliği durduruldu
    Modların kavgasından konu kilitlenince yazdığım mesajı gönderemedim. O yüzden yeni konu açmak zorundayım.

     <?php
    $Page = isset($_GET["page"]) ? $_GET["page"] : "";
    
    switch($Page)
    {
        case "iletisim":
            include "iletisim.php";
            break;
        case "bilgiler":
            include "bilgiler.php";
            break;
        case "":
            include "anasayfa.php";
            break;
        default:
            header("Location: /");
            exit;
    }
    ?>
    Kullanımı:
    alanadi.com/?page=iletisim

    Anlatım:
    Diğer örneklerde default değerini anasayfaya yönlendirdiğinizi gördüm. Saçma olur neden mi?

    Eğer bir kullanıcı alanadi.com/?page=olmayansacmabiradres şeklinde bir adres yazarsa sizin anasayfanız açılır. Bu da aslında olmayan her linkte anasayfanızın açılacağı anlamına gelir.

    O yüzden boş olması durumunda anasayfayı açmasını, eğer hatalı bir sayfa adresi girilirse bunun da anasayfaya yönlendirilmesini sağlıyoruz.

    İpucu:
    header ile yaptığınız yönlendirmelerden sonra exit komutunu kullanmayı unutmayın. header komutu scriptinizi sonlandırmaz, bu da sorunlara yol açabilir.
  • 08-09-2007, 16:53:20
    #2
    Üyeliği durduruldu
    Değişken tanımlarken ' veya " kullanılabilir.

    Arasındaki fark şudur;

    " ile değişken tanımlarsanız, tanımladığınız veri içindeki değişkenler ve escape karakterleri uygun veri ile değiştirilecektir.
    ' ile tanımalamada ise böyle bir durum yoktur, ne yazarsanız değişkenin içeriği o olur.

    Örnek:

    $sayi = 5;

    $cifttirnak = "Sayımız: $sayi\nTamam.";
    $tektirnak = 'Sayımız: $sayi\nTamam.';

    $cifttirnak yazdırılırsa;
    Sayımız: 5
    Tamam.



    $tektirnak yazdırılırsa;
    Sayımız: $sayi\nTamam.

    çıktıları alınır.
  • 08-09-2007, 16:55:41
    #3
    Üyeliği durduruldu
    İpucu:
    echo mu hızlıdır, print mi?
    if mi hızlıdır, switch mi?

    Hiçbiri birbirinden sizin fark edebileceğiniz kadar hızlı değildir, o yüzden alıştığınızı kullanın.
  • 08-09-2007, 18:17:03
    #4
    Üyeliği durduruldu
    muratmoon adlı üyeden alıntı: mesajı görüntüle
    İpucu:
    echo mu hızlıdır, print mi?
    if mi hızlıdır, switch mi?

    Hiçbiri birbirinden sizin fark edebileceğiniz kadar hızlı değildir, o yüzden alıştığınızı kullanın.
    tek bir şart varsa if hızlıdır tek bir şart için swicth kullanmak gereksizdir içinde kontroller vardır biz fark etmesektek çoooook büyük sistemler böyle şeylere dikkat etmek lazım
  • 08-09-2007, 18:34:56
    #5
    Üyeliği durduruldu
    Tek bir şart için zaten switch kullanmak gereksiz değil saçmadır.

    Ama yinede ne kadar büyük sistem olursa olsun siz bu hız farkını asla anlayamazsınız.

    Herhangi bi veritabanı sorgusunu optimize etmek bu hız farkından yaklaşık 100 kat daha fazla hız kazandıracaktır.
  • 08-09-2007, 23:01:01
    #6
    bir çok kişi küçük bir php kodu yazarken bile hızdan bahisediyor fakat bu gereksiz. bu işlemler mikrosaniyelerle ölçülüyordu galiba. php koduna gelene kadar hızı etkileyecek o kadar faktörler varki. yani if yerine switch hızlı o yerine bu hızlı gibi deyimler çok gereksiz kaçıyor.
  • 09-09-2007, 03:44:30
    #7
    bence saçma değil. önemli olan sadece hız değil, daha yavaş olduğuna göre daha çok işlem yapıyo demektir. daha çok işlem daha çok cpu demektir. ne kadar az kaynak kullanırsa o kadar iyidir. damlaya damlaya göl olur :P
  • 09-09-2007, 12:16:24
    #8
    Üyeliği durduruldu
    Dual core bir işlemci senin if yada switch yazmanı sallamaz, ikisini de milisaniyeler içerisinde yapar ve geçer.

    switchleri if'e çevirdim çok büyük hız kazancı sağladım gibi bişey olmaz.

    Optimizasyon arıyorsanız her zaman veritabanınıza bakın.
  • 09-09-2007, 14:58:14
    #9
    Üyeliği durduruldu
    ona bakacam 80k bir site vardı asp+mssql de kasıyordu php+mysql yapıyorum şuan bakacaz farkına (: