şimdi bir tane;

class X extends controller

class'ım var.

bir tane de

class Y extends controller

class'ım.

her ikisinin de fonksiyonları public.

ben Y class'ımın içindeki bir fonksiyonda X class'ına ait bir fonksiyonu çalıştırmak istiyorum. bunu nasıl çağırmam gerekiyor?


umarım açıklayıcı yazmşımdır ya :(

 

hiç php kullanmadım, ama eğer php'de metotlar static olarak tanımlanabiliyorsa bir yolu var. class dışından çağırmak istediğiniz metotu static tanımlamanız yeterli. örneğin:

class Y
{
public static int add(int x, int y)
{
return x+y;
}
}

class X
{
public void test()
{
int sum = Y.add(2, 5);
}
}

burada Y'de tanımlanan metot static olduğundan dolayı metota direkt olarak Y class'ı üzerinden erişebiliyoruz, yani Y'nin bir objesi üzerinden metota erişmek gibi bir zorunluluk yok. bu yazdığım java ve c# syntax'i. php'de de benzer bir şey olmalı.

wheel

public olmasının yanında statik olup olmadığı da önemli. eğer statikse Y::metod() diye çağırabilirsin. statik değilse önce bir tane y instance'i oluşturacaksın. $y = new Y(); gibi. sonra da $y->metod();

gman
1

mobil görünümden çık