Размер файла: 1.81Kb
<?php
class db_exception extends Exception {
}
class db_connect {
/**
* Класс створення обьекту DB
**/
protected static $open = false;
public function __construct($db_host, $db_user, $db_pass, $db_name) {
/**
* Під`эднуэмося до існуючої BD
* @param string $db_host - Ім`я хосту
* @param string $db_user - Ім`я користувача
* @param string $db_pass - Пароль користувача
* @param string $db_name - Ім`я BD
* @return object
**/
if(self::$open) {
throw new db_exception(__CLASS__.' -> '.__FUNCTION__.': Экземпляр класса уже создан');
}
elseif(self::$open = new Mysqli($db_host, $db_user, $db_pass)) {
if(!self::$open -> select_db($db_name)) {
throw new db_exception(__CLASS__.' -> '.__FUNCTION__.': '.self::$open -> error());
}
}
else {
throw new db_exception(__CLASS__.' -> '.__FUNCTION__.': '.self::$open -> error());
}
return self::$open;
}
}
class db extends db_connect {
/**
* Аналоги рідних mysql функцій. Для швидкого використання
**/
public static function mysql_query($query) {
return self::$open -> query($query);
}
public static function mysql_result($query) {
if($return = self::$open -> fetch_array($query)) {
return $return[0];
}
}
public static function mysql_fetch_array($query) {
return self::$open -> fetch_array($query);
}
public static function mysql_fetch_assoc($query) {
return self::$open -> fetch_assoc($query);
}
public static function mysql_fetch_object($query) {
return self::$open -> fetch_object($query);
}
}