Özetle: nasıl bir sınıfın farklı bir yöntemle örneği bir sınıfın yöntemlerini erişebilirim?
Ben şimdi bakıyorum kod bit olduğunu yapar (kodunu değiştirmeyi btw Benim değil ... Ben sadece bunu deşifre ediyorum, bir seçenek değildir.) Aşağıdaki gibidir:
A sınıfı farklı bir sınıfını başlatır bir yöntemi vardır. Bunun gibi bir şey görünüyor:
// this file is named fooClassHere.php class Foo{ public $meh; function bar(){ $something = new Baz; $this->meh = $something->getStuff(); } }
Ne ben anlamaya çalışıyorum bu örneklenmiş sınıf Baz yöntemlerini erişmek için nasıl. Başka bir sayfa aşağıdaki gibi bir şey içerir:
include 'bazClassHere.php'; include 'fooClassHere.php'; $a = new Foo; $a->bar();
Yani tüm Baz bazı şekilde artık mevcut (ve ben $ atanan sadece getStuff () bu-> meh) gerekir? Foo ve Baz sınıfları kod Foo başlatır ve daha sonra sırayla Baz sınıfını başlatır Foo yöntemi bar () çağırır, dahildir. Açıkçası şu BAZ en getStuff () yöntemi tarafından döndürülen verileri görüntüler:
var_dump($a->meh);
Ama ben Foo bar yönteminin içine yaptığı gibi bunları el atama ara adım geçmeden all Baz en geçerli yöntemlerden erişmek istiyorum:
$this->meh = $something->getStuff()
Maybe something like (but of course this doesn't work):
$a = new Foo;
$a->bar(); //instantiates Baz as $something $a->something->fromBaz(); //$something is an instance of Baz, yes? No?
Bu mantıklı umut ve benim notları ile konuyu karıştırmayın vermedi. Uçaksavar! > _ <