PHP OOP: diğer sınıflara bir genel MySQL sınıfını kullanmak için nasıl

0 Cevap php

Ben sadece OOP PHP kullanarak başladı ve bir soru koştu ettik. Bana bir veritabanına bağlanmak için izin verir ve bir tablodaki kayıtları elde etmek için bazı fonksiyonlara sahip bir genel mysql sınıf kurdum:

class mysql{
    //some lines to connect, followed by:
    public function get_record($sql)
    {
      $result = mysql_result(mysql_query($sql));
      return $result;
      //obiously it's a bit more advanced, but you get the picture.

    }
}

Sonra, ben kullanıcı bilgilerini elde etmek için bir sınıf var:

class user{
    __construct($id)
    {  
        $this->id = $id
    }
    public function get_username($id)
    {
         $username = get_record("SELECT name FROM users WHERE id = '".$this->id."'");
         return $username;
    }
}

Bunu denedim, ama fonksiyon get_record bilinmeyen olduğu hata var. Ben $ mysql = new mysql () ekleyerek bu sorun çözülmüş; kullanıcı sınıfına.

Ancak, (ki hemen hemen hepsi var) benim veritabanı yöntemleri kullanan her sınıf için mysql nesne örneğini zorunda oldukça verimsiz hissediyor.

Her yöntemde mysql sınıf aramak zorunda kalmadan, tüm diğer sınıflar için mysql sınıf ve yöntemleri erişilebilir yapmak için bir yolu var mı?

0 Cevap