Örneğin kapsamında ana sınıfından aynı adla yöntemini çağırmak için nasıl

0 Cevap php

Ben fonksiyonu hi () ile üst sınıf c1 var. sınıf C2 C1 uzanır ve i () yöntemiyle tekiz erişimi bulunmaktadır. Sınıf c2 ben statik kapsamında arayabileceğiniz c1, aynı adı taşıyan yöntemi yapmak istiyorum, ama bu yöntemde ben tek örneğini kullanmak ve üst sınıftan, aynı adla yöntemi çağırmak için whan.

class c1{
  function hi(){
    echo 'very '.$this->a;
  }
}

class c2 extends c1{
    private static $i;
    public static function i()  {
        return (self::$i)?self::$i:(self::$i = new self);
    }    

    public $a='cool';
  function hi(){
    self::i()->hi(); // here I want to call hi() from c1 but in instance scope
  }
}

c2::hi(); //must echo: very cool

In real example
c1 is mysqli
c2 is my custom db class
and hi() is commit()
I want to be able to call db::commit(), so i dont need to write db::i()->commit();



EDIT: PHP < 5.3

0 Cevap