https://github.com/alexis90210/hisoka-orm
A simple and powerful ORM(Object-Relational Mapping) library for PHP Mysql.
https://github.com/alexis90210/hisoka-orm
composer mysql oop orm php
Last synced: 4 months ago
JSON representation
A simple and powerful ORM(Object-Relational Mapping) library for PHP Mysql.
- Host: GitHub
- URL: https://github.com/alexis90210/hisoka-orm
- Owner: alexis90210
- Created: 2023-01-04T09:08:20.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-07-25T00:13:33.000Z (9 months ago)
- Last Synced: 2026-01-14T13:27:26.249Z (4 months ago)
- Topics: composer, mysql, oop, orm, php
- Language: PHP
- Homepage:
- Size: 19.5 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# đ Hisoka ORM â Guide dâutilisation
Ce projet utilise lâORM `Hisoka\Orm\DB` pour simplifier les interactions avec une base de donnĂ©es en PHP. Ce guide prĂ©sente les principales opĂ©rations prises en charge par la bibliothĂšque, y compris les opĂ©rations CRUD, les jointures, et les outils de dĂ©bogage.
đŠ DĂ©pendances
Ce projet repose sur :
- Composer pour lâautoload
- Le namespace: Hisoka\Orm\DB
đ§ Initialisation
require 'vendor/autoload.php';
use Hisoka\Orm\DB;
$DB = new DB();
đïž Suppression
Supprimer un utilisateur par identifiant :
$query = $DB->table('Utilisateurs')
->delete()
->where(["Identifiant" => 'login'])
->execute()
->status();
đ„ SĂ©lection (SELECT)
- Sélection de tous les enregistrements avec filtre :
$query = $DB->table('Utilisateurs')
->select([])
->where(["Identifiant" => 'login'])
->limit(1)
->execute()
->fetchAssociative();
- Sélection ciblée par colonnes :
$query = $DB->table('Utilisateurs')
->select(["id", "nom", /* autres colonnes */])
->execute()
->fetchObject();
âïž Mise Ă jour (UPDATE)
- Mettre Ă jour les donnĂ©es dâun utilisateur :
$query = $DB->table('Utilisateurs')
->update()
->where(["Identifiant" => 'login'])
->execute()
->status();
â Insertion (INSERT)
- Insérer un nouvel utilisateur :
$query = $DB->table('Utilisateurs')
->insert(["nom" => 'alexis'])
->execute()
->status();
đ Jointures (JOIN)
- Effectuer une jointure entre deux tables :
->joinWith(string $tableA, string $jointureA, string $tableB, string $jointureB, string $type = "")
joinWith(string $tableA, string $jointureA, string $tableB, string $jointureB, string $type = "")
- [tableA] : PremiĂšre table
[jointureA] : Clé de jointure dans la table A
- [tableB] : DeuxiĂšme table
[jointureB] : Clé de jointure dans la table B
- [type] : Type de jointure (INNER, LEFT, RIGHT, etc.). Par défaut, une jointure simple.
Exemple :
$Interfaces_acheves = $DB
->table('Interfaces')
->select(["Interfaces.Progression", "Projets.IDProjets"])
->where([
["key" => "Projets.IDProjets", "value" => 0, "operator" => "="],
["key" => "Interfaces.Progression", "value" => 4, "operator" => ">"]
])
->joinWith("Projets", "IDProjets", "Interfaces", "IDInterfaces")
->generateSQL();
// ->execute()->fetchAssociative();
đ§Ș Utilitaires
- Activer le mode debug pour les erreurs PDO :
$DB->debug();
- Visualiser la requĂȘte SQL gĂ©nĂ©rĂ©e :
$DB->generateSQL();
- Obtenir le statut dâune requĂȘte :
$DB->status();