Обучение/Помощь новичкам | Класс для работы с PDO
Ребята не ругайте, еще учу PHP класс простой ну удобный)
<?php
class Database
{
public $isConn;
protected $datab;
public function __construct($username = "root", $password = "", $host = "localhost", $dbname = "blog", $option = [])
{
$this->isConn = TRUE;
try
{
$this->datab = new PDO("mysql:host={$host};dbname={$dbname}", $username, $password, $option);
$this->datab->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$this->datab->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function Disconnect()
{
$this->datab = NULL;
$this->isConn = FALSE;
}
public function getRow($query, $param = []) // Получаем одну строчку
{
try
{
$stmt = $this->datab->prepare($query);
$stmt->execute($param);
return $stmt->fetch();
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function getRows($query, $param = []) // Получаем больше одной сточки
{
try
{
$stmt = $this->datab->prepare($query);
$stmt->execute($param);
return $stmt->fetchAll();
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function insertRow($query, $param = []) // Вставляем данные
{
try
{
$stmt = $this->datab->prepare($query);
$stmt->execute($param);
return TRUE;
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function updateRow($query, $param = []) // Обновляем данные
{
try
{
$stmt = $this ->datab->prepare($query);
$stmt->execute($param);
return TRUE;
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function deleteRow($query, $param = []) // Удаляем данные
{
try
{
$stmt = $this->datab->prepare($query);
$stmt->execute($param);
return TRUE;
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
}
?>
<?php
class Database
{
public $isConn;
protected $datab;
public function __construct($username = "root", $password = "", $host = "localhost", $dbname = "blog", $option = [])
{
$this->isConn = TRUE;
try
{
$this->datab = new PDO("mysql:host={$host};dbname={$dbname}", $username, $password, $option);
$this->datab->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$this->datab->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function Disconnect()
{
$this->datab = NULL;
$this->isConn = FALSE;
}
public function getRow($query, $param = []) // Получаем одну строчку
{
try
{
$stmt = $this->datab->prepare($query);
$stmt->execute($param);
return $stmt->fetch();
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function getRows($query, $param = []) // Получаем больше одной сточки
{
try
{
$stmt = $this->datab->prepare($query);
$stmt->execute($param);
return $stmt->fetchAll();
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function insertRow($query, $param = []) // Вставляем данные
{
try
{
$stmt = $this->datab->prepare($query);
$stmt->execute($param);
return TRUE;
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function updateRow($query, $param = []) // Обновляем данные
{
try
{
$stmt = $this ->datab->prepare($query);
$stmt->execute($param);
return TRUE;
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
public function deleteRow($query, $param = []) // Удаляем данные
{
try
{
$stmt = $this->datab->prepare($query);
$stmt->execute($param);
return TRUE;
}
catch (PDOException $e)
{
throw new Exception($e->getMessage());
}
}
}
?>
300272855 , Да почему ругать просто и понятно не плохой код
279364147 , можно было бы короче написать код, ну мне так более нравиться)
300272855 , Ну если желания писать высокое то можно и так ну если на заказ то можно и проще.
Если кого-то интересует, могу написать Front controller - единую точку входу, как на ООП так и процидуркой, кого интересует, пишите)