37970-vm/api/v1/Core/Model.php
2026-01-30 16:28:00 +00:00

37 lines
1.1 KiB
PHP

<?php
namespace Api\Core;
class Model {
protected static $table;
public static function all() {
$db = db();
$stmt = $db->query("SELECT * FROM " . static::$table);
return $stmt->fetchAll();
}
public static function find($id) {
$db = db();
$stmt = $db->prepare("SELECT * FROM " . static::$table . " WHERE id = :id");
$stmt->execute(['id' => $id]);
return $stmt->fetch();
}
public static function where($column, $value) {
$db = db();
$stmt = $db->prepare("SELECT * FROM " . static::$table . " WHERE {$column} = :value");
$stmt->execute(['value' => $value]);
return $stmt->fetchAll();
}
public static function create($data) {
$db = db();
$columns = implode(', ', array_keys($data));
$placeholders = ':' . implode(', :', array_keys($data));
$sql = "INSERT INTO " . static::$table . " ($columns) VALUES ($placeholders)";
$stmt = $db->prepare($sql);
$stmt->execute($data);
return $db->lastInsertId();
}
}