Download the PHP package omegaalfa/query-builder without Composer

On this page you can find all versions of the php package omegaalfa/query-builder. 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 query-builder

# 🧩 Omegaalfa Query Builder ![PHP Version](https://img.shields.io/badge/PHP-%3E%3D%208.4-777BB4?style=for-the-badge&logo=php) ![License](https://img.shields.io/badge/license-MIT-green?style=for-the-badge) ![Status](https://img.shields.io/badge/status-production--ready-success?style=for-the-badge) ![PDO](https://img.shields.io/badge/dependency-PDO-blue?style=for-the-badge) ![Tests](https://img.shields.io/badge/tests-73%20passing-brightgreen?style=for-the-badge) **Query Builder moderno, seguro e tipado para PHP 8.4+** [📦 Instalação](#-instalação) • [🚀 Início Rápido](#-início-rápido) • [📖 Documentação](#-documentação-completa) • [🧪 Testes](#-testes) • [🔒 Segurança](#-segurança)

🚀 Sobre o Projeto

Omegaalfa Query Builder é uma biblioteca moderna, leve e fortemente tipada em PHP 8.4+ para construção fluente de queries SQL com PDO.

🎯 Principais Características

Inspirado em: Eloquent, Doctrine DBAL, Laravel Query Builder


📦 Instalação

Requisitos


🚀 Início Rápido

Configuração Básica


⚡ Performance & Benchmarks

Streaming de Grandes Volumes

Benchmark comparativo entre Omegaalfa Query Builder (execute(false)) e Laravel Eloquent (cursor()) para processamento de grandes datasets com unbuffered queries (streaming real).

📊 Ver Resultados Completos #### Tabela Comparativa | Registros | Omega Time (s) | Omega Mem (MB) | Laravel Time (s) | Laravel Mem (MB) | Verificação | |-----------|----------------|----------------|------------------|------------------|-------------| | 10 | 0.145 | 0.000 | 0.024 | 4.000 | ✅ 10/10 | | 100 | 0.001 | 0.000 | 0.002 | 0.000 | ✅ 100/100 | | 1,000 | 0.003 | 0.000 | 0.008 | 0.000 | ✅ 1K/1K | | 10,000 | 0.097 | 0.000 | 0.067 | 0.000 | ✅ 10K/10K | | 100,000 | 0.189 | 2.000 | 0.653 | 0.000 | ✅ 100K/100K | | **1,000,000** | **1.441** | **32.016** | **6.630** | **0.000** | ✅ **1M/1M** | #### Gráfico de Performance (Tempo de Execução) #### Gráfico de Consumo de Memória

🏆 Conclusões

📌 Condições do Teste

⚠️ Nota: Resultados podem variar conforme hardware, configuração do PHP/MySQL e características dos dados. Benchmark disponível em teste.php para validação independente.


📖 Documentação Completa

📋 Índice de Métodos

Operações Básicas:

Cláusulas WHERE:

JOINs:

Agrupamento e Ordenação:

Funções de Agregação:

Avançado:


🔨 Referência de Métodos

SELECT

select()

Inicia uma consulta SELECT.

Parâmetros:

Exemplo:

⚠️ Segurança: Para campos dinâmicos vindos de usuário, sempre use whitelist:


INSERT

insert()

Insere um único registro.

Parâmetros:

Exemplo:


insertBatch()

Insere múltiplos registros de uma vez.

Parâmetros:

Exemplo:

⚠️ Importante: Todos os registros devem ter as mesmas colunas.


UPDATE

update()

Atualiza registros existentes.

Parâmetros:

Exemplo:

⚠️ Sempre use WHERE para evitar atualizar toda a tabela!


DELETE

delete()

Remove registros.

Parâmetros:

Exemplo:

⚠️ Sempre use WHERE para evitar deletar toda a tabela!


WHERE

where()

Adiciona condição WHERE (AND).

Parâmetros:

Operadores disponíveis:

Exemplo:


orWhere()

Adiciona condição WHERE (OR).

Exemplo:


whereIn()

Verifica se valor está na lista.

Exemplo:


whereNotIn()

Verifica se valor NÃO está na lista.

Exemplo:


whereBetween()

Verifica se valor está entre dois valores.

Parâmetros:

Exemplo:


whereNotBetween()

Verifica se valor NÃO está entre dois valores.


whereNull()

Verifica se coluna é NULL.

Exemplo:


whereNotNull()

Verifica se coluna NÃO é NULL.

Exemplo:


JOIN

join()

Cria junção (JOIN) entre tabelas.

Parâmetros:

Tipos de JOIN:

Exemplo:


AGRUPAMENTO E ORDENAÇÃO

groupBy()

Agrupa resultados por coluna.

Exemplo:


having()

Filtra grupos (após GROUP BY).

Exemplo:


havingRaw()

HAVING com SQL customizado (use com cuidado).

Exemplo:

⚠️ ADVANCED API: Use apenas com SQL confiável, nunca com input de usuário!


orderBy()

Ordena resultados.

Parâmetros:

Exemplo:


limit()

Limita número de resultados (paginação).

Parâmetros:

Exemplo:


FUNÇÕES DE AGREGAÇÃO

count()

Conta registros.

Exemplo:


sum()

Soma valores de uma coluna.

Exemplo:


avg()

Calcula média.

Exemplo:


min()

Retorna valor mínimo.

Exemplo:


max()

Retorna valor máximo.

Exemplo:


exists()

Verifica se existe algum registro.

Exemplo:


MÉTODOS AVANÇADOS

raw()

Executa query SQL customizada.

Exemplo:

⚠️ ADVANCED API: Use apenas com SQL estático confiável!


alias()

Define alias para a tabela principal.

Exemplo:


transactional()

Executa código dentro de transação com rollback automático.

Exemplo:


cache()

Habilita cache de query.

Parâmetros:

Exemplo:

⚠️ Importante: O cache não isola por usuário. Para dados sensíveis, sempre filtre por usuario_id:


execute()

Executa a query e retorna resultados.

Retorno:

Exemplo:


getQuerySql()

Retorna SQL gerado (sem substituir parâmetros).

Exemplo:


toSql()

SQL formatado para debug (com valores substituídos).

Exemplo:

⚠️ Apenas para debug! Nunca use toSql(true) em produção.


explain()

Analisa performance da query (EXPLAIN).

Exemplo:


📝 Exemplos Completos

Exemplo 1: CRUD Completo


Exemplo 2: Relatório com JOINs e Agregações


Exemplo 3: Paginação Completa


Exemplo 4: Transação Complexa


Exemplo 5: Query Complexa com Subqueries


🧪 Testes

O projeto possui cobertura completa de testes com PHPUnit.

Executar Testes

Suítes de Teste

Status: 73 testes, 145 assertions, 0 failures


🔒 Segurança

Arquitetura Segura

Este Query Builder foi desenvolvido com segurança por design:

100% Prepared Statements para valores
Type-safe binding (PDO::PARAM_INT, PDO::PARAM_NULL, etc)
Strict types habilitado em todos os arquivos
Validação de operadores em JOINs
Enums tipadas para operadores SQL
Quote automático de identificadores (Identifier Injection Protection) ✅ Isolamento de Cache por contexto de conexão (Multi-tenant safe)

Documentação de Segurança

Uso Seguro

Reportar Vulnerabilidades

🔒 Não reporte vulnerabilidades via issues públicas!

Resposta garantida em 24-48 horas.


🗺️ Roadmap

✅ v1.0 (Atual)

🚧 v1.1 (Planejado)

💡 v2.0 (Futuro)


🐛 Reportando Bugs

Encontrou um bug? Ajude-nos a melhorar!

Como Reportar

  1. Verifique se já não foi reportado nas Issues
  2. Abra uma nova issue com:

🤝 Contribuindo

Contribuições são muito bem-vindas!

Como Contribuir

  1. Fork o repositório
  2. Crie uma branch: git checkout -b feature/MinhaFeature
  3. Commit: git commit -m 'Adiciona MinhaFeature'
  4. Push: git push origin feature/MinhaFeature
  5. Abra um Pull Request

Diretrizes


📄 Licença

Distribuído sob a Licença MIT. Veja LICENSE para detalhes.


💬 Contato e Suporte

Autor

Omegaalfa

Comunidade


⭐ Mostre seu Apoio

Se este projeto foi útil:


**Desenvolvido com ❤️ por [Omegaalfa](https://github.com/omegaalfa)** [![Stars](https://img.shields.io/github/stars/omegaalfa/query-builder?style=social)](https://github.com/omegaalfa/query-builder/stargazers) [![Forks](https://img.shields.io/github/forks/omegaalfa/query-builder?style=social)](https://github.com/omegaalfa/query-builder/network/members) [⬆ Voltar ao topo](#-omegaalfa-query-builder)

💬 Contato

Criado por Omegaalfa.
Para dúvidas ou sugestões: github.com/omegaalfa


All versions of query-builder with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
ext-pdo Version *
ext-ctype Version *
ext-redis Version *
illuminate/database Version ^12.37
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 omegaalfa/query-builder contains the following files

Loading the files please wait ...