SORU
20 EKİM 2008, PAZARTESİ


__() oluşturmak vs SameAsClassName() PHP oluşturucu için

PHP bir kurucu için sınıf adı yerine __construct() kullanarak herhangi bir avantajı var mı?

örnek:

class Foo {
    function __construct(){
        //do stuff
    }
}

YA

class Foo {
    function Foo(){
        //do stuff
    }
}

CEVAP
20 EKİM 2008, PAZARTESİ


Gizmo ile, avantajı eğer sınıfınızı yeniden adlandırırsanız adlandırın gerek yok yani, katılıyorum. KURU.

Eğer bir alt sınıf varsa benzer şekilde, diyebilirsiniz

parent::__construct()

ana kurucusunu çağırmak için. Eğer daha fazla parça aşağı sınıf değiştirme alt sınıftan miras, üst yapı arama değiştirmek zorunda değilsin.

Küçük bir şey gibi görünüyor, ama eksik ailene kurucusunu çağırmak adını değiştirme sınıfları ve ince ince hatalar oluşturabilir.

Senin heirachy içine bir sınıf eklenir, ama oluşturucu çağrıları değiştirmek için unuttum, örneğin, sen-ebil anne yerine dedesi kurucular demeye başladı. Bu çoğu zaman fark edilmesi zor olabilir, istenmeyen sonuçlara neden olabilir.

Ayrıca unutmayın

PHP 5.3.3 olarak, namespaced bir sınıf adı geçen eleman aynı adı taşıyan yöntem, artık yapıcı olarak kabul edilir. Bu değişiklik olmayan namespaced sınıfları etkilemez.

Kaynak: http://php.net/manual/en/language.oop5.decon.php

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AndroidSale

    AndroidSale

    17 NİSAN 2011
  • Dan Gately

    Dan Gately

    13 AĞUSTOS 2006
  • Dion Coulls

    Dion Coulls

    16 AĞUSTOS 2006