Küresel bir nesne oluşturmak için tekil yöntemi kullanarak

0 Cevap php

Ben genel bir nesne (bu örnekte onun "username") erişmek için tekiz yöntemi kullanmaya çalışıyorum. Benim soru DB->connect() fonksiyonu I echo $this->username; without $ username ilan veya son 2 satır değiştirerek yapabilirdi ki bunu nasıl değiştirebilir mi?

class CI_Base {

    private static $instance;

    public function CI_Base()
    {
        self::$instance =& $this;
    }

    public static function &get_instance()
    {
        return self::$instance;
    }
}

function &get_instance() {
    return CI_Base::get_instance();
}

class Foo {
    function run() {
        $CI = & get_instance();
        $CI->username = "test";
        $db = new DB;
        $db->connect();
    }
}

class DB extends Foo {
    function connect() {
        $CI = & get_instance();
        echo $CI->username;
    }
}

$foo = new Foo;
$foo->run();

0 Cevap