This commit is contained in:
Halbe Bruno
2025-12-05 19:40:39 -03:00
commit f37bc712e6
4312 changed files with 359196 additions and 0 deletions

51
app/Core/Model.php Normal file
View File

@@ -0,0 +1,51 @@
<?php
namespace App\Core;
use App\Config\Database;
use PDO;
abstract class Model
{
protected $conn;
protected $table;
public function __construct()
{
$this->conn = Database::getInstance()->getConnection();
}
public function findAll()
{
$stmt = $this->conn->prepare("SELECT * FROM {$this->table}");
$stmt->execute();
return $stmt->fetchAll();
}
public function find($id)
{
$stmt = $this->conn->prepare("SELECT * FROM {$this->table} WHERE id = :id");
$stmt->execute(['id' => $id]);
return $stmt->fetch();
}
public function where($column, $value)
{
$stmt = $this->conn->prepare("SELECT * FROM {$this->table} WHERE {$column} = :value");
$stmt->execute(['value' => $value]);
return $stmt->fetchAll();
}
public function first($column, $value)
{
$stmt = $this->conn->prepare("SELECT * FROM {$this->table} WHERE {$column} = :value LIMIT 1");
$stmt->execute(['value' => $value]);
return $stmt->fetch();
}
public function delete($id)
{
$stmt = $this->conn->prepare("DELETE FROM {$this->table} WHERE id = :id");
return $stmt->execute(['id' => $id]);
}
}