F

Projets

NexaORM

NexaORM

Introduction

NexaORM est une bibliothèque PHP moderne de mappage objet-relationnel (ORM) conçue pour simplifier les interactions entre les bases de données et rationaliser le développement d'applications PHP. Elle fournit un moyen léger et intuitif de gérer les entités, les relations et les requêtes de base de données.

Fonctionnalités

Pourquoi NexaORM ?

Migrations automatiques intelligentes :

Dites adieu à la création manuelle fastidieuse de migrations ! La fonction de génération automatique intelligente de NexaORM analyse vos entités et crée les migrations nécessaires pour mettre à jour votre schéma de base de données en conséquence. Cette fonctionnalité puissante offre plusieurs avantages :

Intégration transparente :

NexaORM s'intègre parfaitement à votre environnement de développement existant :

Communauté et support :

Rejoignez une communauté dynamique de développeurs et de contributeurs qui soutiennent activement NexaORM :

Choisissez NexaORM et découvrez la puissance des migrations intelligentes générées automatiquement, de la gestion de base de données sans effort, de l'intégration transparente et d'une communauté solidaire. Adoptez un flux de travail de développement plus efficace et sans erreur pour vos applications PHP.

Installation

Utiliser Composer pour installer le package:

composer require v1p3r75/nexa-orm

Preview

 
// Define entity
 
#[Entity]
class UserEntity
{
 
  #[PrimaryKey]
  #[SmallInt]
  #[AutoIncrement(true)]
  public int $id;
 
  #[Strings]
  #[DefaultValue('John')]
  public string $username;
 
  #[Number]
  #[ForeignKey(ProfileEntity::class, 'id', [Nexa::ON_DELETE => Nexa::CASCADE, Nexa::ON_UPDATE => Nexa::CASCADE])]
  #[Comment('user profile')]
  #[Nullable]
  public int $profile;
 
  #[DateAndTime]
  #[DefaultValue(Nexa::DATETIME_NOW)]
  public DateTime $created_at;
}
 
// Create a model for database interation
 
 
use Nexa\Models\Model;
use Nexa\Test\Entities\UserEntity;
 
class User extends Model
{
 
  protected $entity = UserEntity::class;
 
}
 
User::insert(['username' => 'John Doe', 'email' => 'johndoe@test.com'])
 

Auteurs

Resources