• 13-06-2014, 17:44:21
    #1
    Merhaba arkadaşlar.. Codeigniter'da rastladığım ve if not gibi bir işlem gören , "||" işareti ile gösterilen kodun anlamı nedir ? Çalışma mantığı nedir? Varsa kodlamanın bu şekildeki ismi nedir.. Cevaplarınız için şimdiden teşekkürler..


    //Verilerin çekildiği kod
    $this->data["page"] = $this->page_m->get($id);
    //Anlamını öğrenmek istediğim kod
    count($this->data['page']) || $this->data['errors'][] = 'kullanıcı bulunamadı';
  • 13-06-2014, 17:49:14
    #2
    Üyeliği durduruldu
    || anlamı veya demektir. Bunu PHP giriş kısmında görmüş olman gerekir.
  • 13-06-2014, 17:57:11
    #3
    Çok zekisin.. Bence soruyu bir daha oku
  • 13-06-2014, 18:14:05
    #4
    Üyeliği durduruldu
    esquirre adlı üyeden alıntı: mesajı görüntüle
    Çok zekisin.. Bence soruyu bir daha oku
    Sayısını yazdırmıs veya hataları göstermiş
  • 13-06-2014, 21:01:10
    #5
    BlackDare adlı üyeden alıntı: mesajı görüntüle
    Sayısını yazdırmıs veya hataları göstermiş
    Şimdi ben sana o kodu açıklayayım orada diyor ki :
    eğer herhangi bir kayıt yoksa hatalar dizisine kullanıcı bulunamadı değerini ekle..
    Benim sorum şu: Böyle bir syntax mı var ? Normalde bunu if ile yapabiliyoruz fakat burada daha farklı bir yöntemle kullanılmış ... Yani işlemi dahada mı hızlandırıyor php de böyle bir kullanım mevcut mu ?
  • 13-06-2014, 21:14:52
    #6
    buarada bahsettiğin kod framework kodu. normalde bu şekilde bir yazım tarzı yok ancak frame work işleri kolaylaştırmak için tasarlandığından bu şekilde bir yazım geliştirmiş olabilir.

    Framework ü ne zaman ve hangi projelerde kullanacağımıza dikkat etmeden rastgele her yerde kullanmaması gerektiğinin çok iyi bir örneği framework kodlarını ezberlemek bir süre sonra bağımlısı olmak anlamına gelir. İşinizi kolaylaştırsa da ara bir yazılımdır. Php nin kendisi değildir unutmamak lazım.
  • 14-06-2014, 10:47:58
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    PHP'de böyle bir kullanım var.

    count($this->data['page']) || $this->data['errors'][] = 'kullanıcı bulunamadı';
    Burada, ilk önce şu komut çalışacak.

    count($this->data['page'])
    Bu, $this->data['page']'in sayısını al demek. count() fonksiyonu bir sayı döndürecektir. (0,1,2,3... gibi)

    Eğer count() fonksiyonu pozitif bir sayı döndürürse, ||'ın (veya demek) sağındaki kısım çalışmayacaktır, çünkü pozitif sayılar PHP'de true (doğru) olarak geçmektedir.

    Eğer count() fonksiyonu 0 döndürürse, 0 false (yanlış) sayıldığı için ||'ın sağındaki bölüm çalışacaktır.

    Kısacası, yukarıdaki scripti şu işi yapar.

    "$this->data['page']'i say, eğer dönen sonuç 0 ise $this->data['errors'][] dizisine 'kullanıcı bulunamadı' stringini ekle. 1 veya üzeri ise birşey yapma."

    Ancak bu tür işlemler için if/else bloklarını kullanmak daha sağlıklı. Bu tür kullanımlar okunaklı değildir ve bug çıkarma olasılığı yüksektir.