ORM custom: ActiveQuery e dirty tracking

Pillar article sul query builder fluent, il tracking delle modifiche e il pattern ActiveRecord del framework.

1 min di letturaPHP

Luigi Iadicola, Programmatore - Napoli

Un ORM pensato per essere leggibile

ActiveQuery offre una API fluent per costruire query senza scrivere SQL a mano: where(), orderBy(), join(), paginate() e molto altro. Le query vengono generate dal builder specifico per il driver in uso, garantendo compatibilità tra SQLite, MySQL, MariaDB e PostgreSQL.

Ogni modello traccia automaticamente le modifiche ai propri attributi. Quando chiami save(), solo i campi effettivamente cambiati vengono inclusi nella UPDATE, evitando scritture inutili sul database.

Caratteristiche chiave

  • Query builder fluent con supporto join, aggregati e subquery
  • Dirty tracking: isDirty(), getDirtyAttributes()
  • Hydration automatica: le righe diventano istanze del modello
  • Type casting configurabile per ogni campo
  • Metodo toSql() per debug rapido delle query

Il vantaggio di un ORM custom è il controllo totale: nessuna magia nascosta, ogni comportamento è tracciabile nel codice.

Hai lo stesso problema in azienda?

Raccontami cosa non va e da quando. Guardo la situazione con te prima di proporre qualsiasi intervento.

RaccontameloRispondo entro un giorno lavorativo.
Argomenti:
Condividi:LinkedIn

Ricevi il prossimo articolo

Una mail per ogni articolo nuovo, nient'altro. Ti disiscrivi con un clic dal link in fondo a ogni email.