Download the PHP package byjg/micro-orm without Composer

On this page you can find all versions of the php package byjg/micro-orm. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package micro-orm


sidebar_key: micro-orm tags: [php, databases, orm]

MicroOrm for PHP

A micro framework for create a very simple decoupled ORM. This library intended to be very small and very simple to use;

Sponsor Build Status Opensource ByJG GitHub source GitHub license GitHub release

Key Features:

Architecture

MicroORM implements Martin Fowler's enterprise patterns:

You can choose the pattern that best fits your application: use Repository + Data Mapper for complex domains, or Active Record for simpler CRUD-focused applications.

These are the key components:

For a detailed explanation of the architecture and when to use each layer, see Architecture Layers: Infrastructure vs Domain.

Getting Started

Table Structure

We have the following table structure in the database for this example:

We want to be able to interact with this table using the ORM.

Defining the Model

A Model in our context is a class that symbolizes the data you wish to store or fetch from the database. This Model class can be as simple as a class with public properties. Alternatively, it can be a class equipped with getter and setter methods for more controlled access and manipulation of the data.

To map the database fields, you can add attributes to the Model class. Each property in the Model class represents a field in the database.

Let's look at an example:

In this example, we have a class MyModel with three properties: id, name, and companyId.

The TableAttribute is used to define the table name in the database.

Connecting the repository

After defining the Model, you can connect the Model with the repository.

Querying the database

You can query the database using the repository.

or

or, the same example above:

Basics

Advanced Topics

Install

Just type:

Running Tests

Related Projects

Dependencies


Open source ByJG


All versions of micro-orm with dependencies

PHP Build Version
Package Version
Requires php Version >=8.3 <8.6
ext-json Version *
ext-pdo Version *
byjg/anydataset-db Version ^6.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package byjg/micro-orm contains the following files

Loading the files please wait ...