• 20-02-2009, 16:15:20
    #1
    Üyeliği durduruldu
    forumda ratgeldigim şöyle bir dizi kullanımı var.

    <?php
    $dizi = array("armut"=>3 , "3"=>"6");
    echo $dizi[armut];
    ?>
    bu kullanım yanlıştır.

    nedenine gelecek olursak. php de sabit değişkenler başında dolar işareti olmadan kullanılırlar.

    Yukardaki örnekte tahmin ettiginiz gibi 3 sonucunu alırken
    <?php
    define("armut","3",true);
    $dizi = array("armut"=>3 , "3"=>"6");
    echo $dizi[armut];
    ?>
    bu örnekte anlamadığınız şekilde 6 sonucunu alırsınız. Bundan alışkanlık haline getirilmesi babında. dizilerin indisine erişirken ya

    $dizi["armut"];
    gibi
    yada
    $dizi[0];
    gibi erişmek gerekir.

    Bu başlık yada yaklaşımı genelde echo ile döngüde değer yazdıran kişilerin kodlarında denk geldim.

    fazladan atılan 2 tane çift tırnak insanı yormaz daha sonra oluşabilecek büyük dertlerden kurtarır
  • 19-03-2009, 17:43:11
    #2
    Üyeliği durduruldu
    ayrıca php6 ile birlikte bu şekilde tırnaksız indeks kullanımı kalkacakmış. daha doğrusu girilen değeri direk key olarak algılamayıp sabit (constant) olarak alıp değerini key olarak kullanacak. eğer tanımlamadıysanız hata verecek. şimdiden kodları buna uygun yazmakta yarar var. diğer bazı yenilikler için şuraya bakabilirsiniz.
    PHP 6 indir: php 6 ile gelecek yenilikler / değişiklikler
  • 19-03-2009, 17:46:24
    #3
    Üyeliği durduruldu
    başlığıma sonunda birisi anlyip cevap yazdiya gözlerim yaşardı kaç seferdir nerde görsem yaziyorum kimsenin farkettigi yok. hatta diziyi böyle kullanmayi kim ögretiyor bi bulsam :P
  • 19-03-2009, 17:53:39
    #4
    Üyeliği durduruldu
    Kimse öğretmiyor.Bi' üşengeçlik almış başını gidiyor
  • 19-03-2009, 18:44:05
    #5
    Üyeliği durduruldu
    çok gördüm böyle kodlar, doğrunu olanı tabiki $dizi["armut"] yani dediğin gibi 2 tırnak için riske gerek yok
  • 14-05-2009, 12:26:14
    #6
    Ben kaç gündür sistemimde tırnaklama hatalarını düzeltiyorum. Forumlara yazdığım ve kimsenin çözüm bulamadığı birçok sorunum da böylece (kendiliğinden) çözüldü. HTML bölümler dahil. Onları da W3C standartlarına getirdim.

    Ancak aşağıda hocamın anlattığı konuyu daha iyice anlamış değilim.
  • 14-05-2009, 12:35:53
    #7
    Üyeliği durduruldu
    janocan adlı üyeden alıntı: mesajı görüntüle
    Ben kaç gündür sistemimde tırnaklama hatalarını düzeltiyorum. Forumlara yazdığım ve kimsenin çözüm bulamadığı birçok sorunum da böylece (kendiliğinden) çözüldü. HTML bölümler dahil. Onları da W3C standartlarına getirdim.
    Ancak aşağıda hocamın anlattığı konuyu daha iyice anlamış değilim.
    tırnaklarla boğuşmak yerine php kodlarini kapatip açarak daha okunabilir kodlar yazabilirsiniz. daha sonra editlemekte kolay olur

    mesela

    echo "<img src=\"a.jpg\">$deneme";
    yazmak yerine
    ?><img src="a.jpg"><?php echo $deneme;?>
    daha okunabilir koddur

    bu adi geçen konuda diziye indisi ile erişmedeki yanlis kullanimi anlatiyor.

    çoğu kişi şöyle yanlis bir kullanim yapiyor (nerden bulduklarını şahsen merak ediyorum)

    echo "dizi böyle kullanilirsa hatailidir $dizi[armut] onun için...";
    bu kullanım şöyle olmasi gerekir

    echo "dizi böyle kullanilirsa dogrudur". $dizi["armut"] ."onun için...";
    umarim bu sefer anlatabilmişimdir
  • 14-05-2009, 12:42:29
    #8
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    echo "dizi böyle kullanilirsa hatalidir $dizi[armut] onun için...";
    bu kullanım şöyle olmasi gerekir
    echo "dizi böyle kullanilirsa doğrudur ". $dizi["armut"] ."onun için...";
    Ben daha bir tanesini anladım ki siz bir hatalı kullanım daha gösterdiniz burda. PHP'ci mi yapçanız bizi
  • 14-05-2009, 13:29:12
    #9
    Kimlik doğrulama veya yönetimden onay bekliyor.
    ben çift tırnak da kullanmıyorum
    her zaman tek tırnak daha garanti ve kodların okunması rahatlaşıyor
    echo 'i değişkeni '.$i.'';
    gibi..