PHPackages                             victormmeloc/datalayer - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. victormmeloc/datalayer

ActiveLibrary[Database &amp; ORM](/categories/database)

victormmeloc/datalayer
======================

Gerenciador de requisições php em banco de dados mysql utilizando PDO

v1.0.2(3y ago)07MITPHPPHP &gt;=7.0

Since Oct 29Pushed 3y ago1 watchersCompare

[ Source](https://github.com/victormmelo/datalayer)[ Packagist](https://packagist.org/packages/victormmeloc/datalayer)[ RSS](/packages/victormmeloc-datalayer/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)DependenciesVersions (4)Used By (0)

PHP PDO - Datalayer
===================

[](#php-pdo---datalayer)

Gerenciador de requisições php em banco de dados mysql utilizando PDO

Instalação
----------

[](#instalação)

Para instalar esta dependência basta executar o comando abaixo:

```
composer require victormmeloc/datalayer
```

Iniciar
-------

[](#iniciar)

Para usar essa classe, é nessário informar o nome da tabela, chamando a variável stática, conforme abaixo:

```
// INSERE O AUTOLOAD
require __DIR__.'/vendor/autoload.php';

use DataLayer\Datalayer;

// DEFINE A TABELA
Datalayer::setTable('users');
```

Utilização
----------

[](#utilização)

Para usar este gerenciador basta seguir o exemplo abaixo:

#### configurar dados do banco

[](#configurar-dados-do-banco)

```
//DEFINE AS CONFIGURAÇÕES DO BANCO DE DADOS
Datalayer::config(
    'localhost',
    'datalayer',
    'root',
    'pass',
    '3306'
);
new Datalayer;
```

#### pagination()

[](#pagination)

Método responsável por montar a query, fazer a consulta no banco de dados e retornar um array com os dados.
Para invoca-lo é possível informar a quantidade de dados que serão retornados e as colunas, caso seja default, será utilizado a quantidade de 50 retornos e todas as colunas.

```
Datalayer::pagination($page,$quantity,$filter,$columns);

// RETORNO
$arr = [
    'previus' => página anterior, caso não tenha retornará null,
    'next' => próxima página, caso não tenha retornará null,
    'current' => página atual,
    'quantityRows' => quantidade de linhas gerais da consulta,
    'quantityPages' => quantidade de páginas,
    'start' => linha inicial,
    'end' => linha final,
    'data' => objeto com os dados,
];
```

```
// PARAMETROS

/**
 * PAGE
 * a página que deseja fazer a pesquisa
 * @param int $page
 * valor default é '1'
 */
$page = 1;

/**
 * QUANTITY
 * a quantidade de retornos por página
 * @param int $quantity
 * valor default é '50'
 */
$quantity = 50;

/**
 * FILTER
 * os filtros da consulta. Esse filtro representa a cláusula WHERE da consultar
 * @param array $filter
 * valor default é '[]'
 */
$filter = [
    'name' => [
        'operator' => '=',
        'value' => 'Victor'
    ],
    'email' => [
        'operator' => 'LIKE',
        'value' => 'M%'
    ]
];

/**
 * COLUMNS (opcional)
 * as colunas que deseja retornar
 * @param string $columns
 * valor default é '*'
 */
$columns = 'name,email';
```

#### GET

[](#get)

```
Datalayer::get(array $filter = [], string $columns = '*');
$data = Datalayer::run();
return $data;
```

```
// PARAMETROS
/**
 * FILTER
 * os filtros da consulta. Esse filtro representa a cláusula WHERE da consultar
 * @param array $filter
 * valor default é '[]'
 */
$filter = [
    'name' => [
        'operator' => '=',
        'value' => 'Victor'
    ],
    'email' => [
        'operator' => 'LIKE',
        'value' => 'M%'
    ]
];

/**
 * COLUMNS (opcional)
 * as colunas que deseja retornar
 * @param string $columns
 * valor default é '*'
 */
$columns = 'name,email';
```

#### FIND

[](#find)

```
$data = Datalayer::find(string $filter,string $column = 'id');
return $data;
```

```
// PARAMETROS
/**
 * FILTER (obrigatório)
 * o identificador do item a ser consultado
 * @param string $filter
 */
$filter = 'email@gmail.com';

/**
 * COLUMN (opcional)
 * a coluna que deseja retornar
 * @param string $column
 * valor default é 'id'
 */
$column = 'email';
```

#### CREATE

[](#create)

```
$request = [
    'nome' => 'Primeiro',
    'email' => 'Segundo Sobrenome',
];

$id = Datalayer::create($request);
```

#### UPDATE

[](#update)

```
$request = [
    'first_name' => 'Raul',
    'last_name' => 'da Silva Sauro',
    'genre' => 'M'
];
Datalayer::update($request, $id);
```

#### DELETE

[](#delete)

```
Datalayer::delete($id);
```

#### DESCRIBE

[](#describe)

Retornar as colunas da tabela

```
$columns = Datalayer::describe();
```

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

3

Last Release

1287d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/57b78ba90f36c151990027baa83db46d58e14bbe2d64736025eeb181d091eaf8?d=identicon)[victormmelo](/maintainers/victormmelo)

---

Top Contributors

[![victormmelo](https://avatars.githubusercontent.com/u/58110872?v=4)](https://github.com/victormmelo "victormmelo (14 commits)")

### Embed Badge

![Health badge](/badges/victormmeloc-datalayer/health.svg)

```
[![Health](https://phpackages.com/badges/victormmeloc-datalayer/health.svg)](https://phpackages.com/packages/victormmeloc-datalayer)
```

###  Alternatives

[doctrine/orm

Object-Relational-Mapper for PHP

10.2k285.3M6.2k](/packages/doctrine-orm)[jdorn/sql-formatter

a PHP SQL highlighting library

3.9k115.1M102](/packages/jdorn-sql-formatter)[illuminate/database

The Illuminate Database package.

2.8k52.4M9.3k](/packages/illuminate-database)[mongodb/mongodb

MongoDB driver library

1.6k64.0M542](/packages/mongodb-mongodb)[ramsey/uuid-doctrine

Use ramsey/uuid as a Doctrine field type.

90340.3M209](/packages/ramsey-uuid-doctrine)[reliese/laravel

Reliese Components for Laravel Framework code generation.

1.7k3.4M16](/packages/reliese-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
