php mysqli class - PullRequest
       9

php mysqli class

1 голос
/ 16 мая 2011

Моя основная проблема в том, что у меня проблемы с доступом к классу из другого класса.Вот что я настроил до сих пор:

Мой класс БД:

class db {

    public static $mysqli;
    public function __construct(){}

    static function con(){
        if(!self::$mysqli){
            self::$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
        }
        return self::$mysqli;
    }
}

Это прекрасно работает, когда я просто вызываю его из функции, подобной такой:

function defineSettings(){
  if ($query = db::con()->prepare(...my query...)) {    
    $query->execute();
    $query->bind_result($1, $2, $3);
    $query->fetch();
    $query->close();
  }

  db::con()->close();

}

Однако у меня возникли проблемы с доступом к этому методу db-> con () из метода другого класса.Я пытался расширить его до нового класса, но, возможно, я делаю это неправильно.Пример того, как использовать это из нового класса, будет высоко оценен!Спасибо!

1 Ответ

0 голосов
/ 16 мая 2011

Не уверен на 100%, понял ли я ваш вопрос, но класс ниже должен показать, как вы можете получить объект db из класса Db, а затем использовать его в другой функции

class Example2 {
    private $db;

    public function test() {
        if (!$this->db) {
            $this->db = db::con();
        }
        //Do your stuff
    }

    public function test2() {
        $this->db->close();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...