Browse Source

Add Database class

main
lucas cardoso 2 years ago
parent
commit
df7470b867
  1. 81
      app/Core/DataBase.php

81
app/Core/DataBase.php

@ -0,0 +1,81 @@
<?php
namespace app\Core;
use app\Core\Connect;
use PDO;
use PDOException;
/**
* Description of WppModel
*
* @author Lucas Awade
*/
class DataBase
{
protected function strquery($stmt, $params)
{
foreach ($params as $key => $value) {
if (is_null($value) || (is_string($value) && $value == '')) {
$value = null;
}
$stmt->bindValue(":{$key}", $value, (is_int($value) ? PDO::PARAM_INT : PDO::PARAM_STR));
}
}
public function begin()
{
Connect::getInstance()->beginTransaction();
return 1;
}
public function commit()
{
Connect::getInstance()->commit();
return 1;
}
public function rollback()
{
Connect::getInstance()->rollBack();
return 1;
}
function create($query, $data)
{
$stmt = Connect::getInstance()->prepare($query);
$this->strquery($stmt, $data);
$stmt->execute();
return Connect::getInstance()->lastInsertId();
}
function read($query, $data = null)
{
$stmt = Connect::getInstance()->prepare($query);
$this->strquery($stmt, $data);
$stmt->execute();
return $stmt;
}
function delete($query, $data)
{
$stmt = Connect::getInstance()->prepare($query);
$this->strquery($stmt, $data);
$stmt->execute();
return ($stmt->rowCount() ? 1 : 0);
}
function update($query, $data)
{
$stmt = Connect::getInstance()->prepare($query);
$this->strquery($stmt, $data);
$stmt->execute();
return ($stmt->rowCount() ? 1 : 0);
}
}
Loading…
Cancel
Save