Ben bir sınıf belirli bir yöntemi çağırmak için gidiyor olmadığını bilmek istiyorum, ama sınıf başlatmasını önce bilmek istiyorum. Bu mümkün mü?
Örnek: Onun __construct()
yöntemi içinde class Controller_Index
aramalar $this->composite('SomeCompositeClass')
. Class SomeCompositeClass
bir helloWorld()
yöntemi vardır. Ben arayabilirsiniz görmek istiyorsanız Controller_Index->helloWorld()
.
Benim denetleyicisi bu kompozit sınıfları I ({talep ediyorum yöntemini içeren olmadığını kontrol edebilir, böylece ($this->composite()
ile) herhangi bir kompozit sınıfları eklemek için gidiyor Temelde ben [(1)] görmek istiyorum }). Ve ben ilk Controller_Index
örneğini zorunda kalmadan bunu yapmak istiyorum.
Teşekkürler!
Edit
I suppose what I want to do is similar to using PHP's Reflection classes to see if a class method exists. But I don't want to know if the method exists, I want to know if the class calls it.
Edit 2
Interfaces won't help because I won't necessarily call $this->composite()
from every controller.
Belki ben sadece sorunu yeniden düşünmeye ve farklı bir yaklaşım ile gitmek gerekir.