2017 © Pedro PelĂĄez
 

library crud

Um CRUD para otimizar suas consultas.

image

pluscrud/crud

Um CRUD para otimizar suas consultas.

  • Tuesday, April 24, 2018
  • by jeconiassantos
  • Repository
  • 1 Watchers
  • 0 Stars
  • 18 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 9 Versions
  • 0 % Grown

The README.md

Classe CRUD

Se vocĂȘ quer reduzir os nĂșmeros de linhas e evitar muitas querys e conexĂ”es com o banco de dados vocĂȘ pode utilizar essa classe CRUD para facilitar sua vida., (*1)

  • FĂĄcil de usar
  • Mini sistema de log
  • Reaproveitar conexĂŁo com o Banco de dados

Obtenha a classe:, (*2)

composer require pluscrud/crud

Conhecendo a Classe

Aqui irei descrever todo o funcionamento da classe e como utilizar todos os métodos que contém disponíveis no momento., (*3)

Como eu posso inicializar a classe?

VocĂȘ pode iniciar a classe de 3 maneiras distintas, quem decide Ă© vocĂȘ! ;), (*4)

Modo 1:

VocĂȘ pode utilizar sua classe de conexĂŁo com o banco de dados e passar a conexĂŁo atual para o CRUD., (*5)

$pdo = 'Seu objeto de conexĂŁo com o banco de dados';
$crud = \PlusCrud\PlusCrud::getInstance($pdo);

Modo 2:

VocĂȘ pode utilizar define ou array., (*6)

define('CONFIG', ['localhost', 'teste', 'root', 'senha' ]);
$crud = \PlusCrud\PlusCrud::getInstance(null, CONFIG);
------------------------------------------------------------------------------
$config = array('localhost', 'teste', 'root', 'senha');
$crud = \PlusCrud\PlusCrud::getInstance(null, $config);

Modo 3:

Se vocĂȘ nĂŁo quiser utilizar define ou array, utilize os mĂ©todos internos do CRUD., (*7)

$crud = \PlusCrud\PlusCrud::getInstance();
$crud->setDBHost('localhost');
$crud->setDBName('teste');
$crud->setDBUser('root');
$crud->setDBPass('senha');
$crud->run();
  • Se vocĂȘ utilizar o modo 3 vocĂȘ deve chamar o $crud->run() para carregar a conexĂŁo com o banco de dados.

No modo 2 e 3 vocĂȘ pode checar se a conexĂŁo com o banco de dados foi iniciada, apenas chame $crud->log(). VocĂȘ deverĂĄ receber algo como:, (*8)

ConexĂŁo com o banco de dados:
Inicializada | ::1 | 11-02-2018 21:34:14

Métodos CRUD

Agora que sabemos como iniciar a conexão com o banco de dados vamos aprender a utilizar os métodos., (*9)

Criando registros

A criação de registros com essa classe é bastante fåcil, basta utilizar $crud->insert()., (*10)

$crud->insert('usuario', array('nome' => 'Jeconias', 'email' => 'jeconiass2009@hotmail.com', 'senha' => 'senha'));
  • Primeiro parĂąmetro: Insira o nome da sua tabela;
  • Segundo parĂąmetro: Insira uma array com as chaves iguais a coluna da sua tabela ou uma array multidimensional. Exemplo array simples:, (*11)

    array('nome' => 'Jeconias', 'email' => 'jeconiass2009@hotmail.com', 'senha' => 'senha');

    Exemplo array multidimensional:, (*12)

    $arr = array(
        0 => array(
            'nome' => 'José',
            'data' => '2018-03-22'),
        1 => array(
            'nome' => 'Jeconias',
            'data' => '2018-03-25')
     );
  • Terceiro parĂąmetro: VocĂȘ pode criptografar o valor passando o nome da chave que corresponde ao valor desejado. PadrĂŁo: senha;, (*13)

    $crud->inserir retorna a quantidade de linha inseridas., (*14)

Selecionando registros

$crud->select('usuario', array('nome', 'email'), array('email' => 'jeconiass2009@hotmail.com'), null, array('nome' => 'ASC'));
  • Primeiro parĂąmetro: Nome da tabela;
  • Segundo parĂąmetro: Uma array com os valores que deseja receber. Use array(*) para tudo;
  • Terceiro parĂąmetro: Uma array que faz papel de where, ou seja, no exemplo a cima eu irei receber todos os registros que tenha o email correspondente. VocĂȘ pode utilizar mais de um valor, ex: array('nome' => Jeconias, 'Cidade' => 'Natal');, (*15)

    VersĂŁo >= 1.0.8
    • Nas versĂ”es acima de 1.0.8 vocĂȘ pode definir o tipo de condição para cada valor.

    Exemplo:, (*16)

    array('versao' => '2.2', 'joker' => array('>'))

    VocĂȘ pode inserir mais "Jokers":, (*17)

    Outro exemplo:, (*18)

    array('versao' => '2.2' 'tipo' => 'stable', 'joker' => array('>', '='))

    PS.:, (*19)

    • Mantenha a sequĂȘncia das condiçÔes iguais as das seleçÔes;
    • Sempre utiliza o nome "joker" para setar as condiçÔes;
    • O valor padrĂŁo para WHERE Ă© "=" se vocĂȘ nĂŁo utilizar o joker.
  • Quarto parĂąmetro: Utilize um valor inteiro para definir o limite de registros selecionados;, (*20)

  • Quinto parĂąmetro: Uma array para classificar o conjunto de resultados em ordem ascendente ou decrescente. Use DESC ou ASC., (*21)

    Monte sua SQL

    Se a Classe nĂŁo suporta (ainda e.e) sua SQL, vocĂȘ pode montar uma para nĂŁo abandonar ou ter que usar duas classes para CRUD., (*22)

    $crud->selectManual('SELECT * FROM registrodehoras WHERE data BETWEEN :inicio AND :fim', array('inicio' => '2018-02-01', 'fim' => '2018-03-05'));

    $crud->select() e $crud->selectManual retornam os valores selecionados., (*23)

Atualizando registros

$crud->update('usuario', array('email' => 'exemplo@hotmail.com', 'nome' => 'exemplo'), array('id' => 5));
  • Primeiro parĂąmetro: Nome da tabela;
  • Segundo parĂąmetro: Uma array com os valores que deseja atualizar.
  • Terceiro parĂąmetro: Defina qual registro irĂĄ atualizar. where.

$crud->update retorna a quantidade de linhas afetadas., (*24)

Deletando registros

$crud->delete('usuario', array('id' => 3));
  • Primeiro parĂąmetro: Nome da tabela;
  • Segundo parĂąmetro: Uma array com os valores que deseja remover.
  • Obs: Se vocĂȘ NÃO passar o segundo parĂąmetro OU passar array('*') , TUDO serĂĄ apagado da tabela.

$crud->delete retorna o nĂșmero de linhas removidas., (*25)

Inserir tradução do log

VocĂȘ pode utilizar um arquivo PHP externo para alterar o idioma padrĂŁo dos logs. O arquivo deve ter o seguinte nome: class.pluscrud.lang.SIGLA_DO_IDIOMA.php. Exemplo: class.pluscrud.lang.en.php, (*26)

Basta chamar o método $crud->setLanguage e utilizar dessa forma:, (*27)

$crud->setLanguage('en', 'Diretorio do arquivo');

Se vocĂȘ deseja fazer uma tradução, basta utilizar o arquivo padrĂŁo como base. Ele estĂĄ localizado aqui., (*28)

Log

Use $crud->log() para receber as açÔes e erros gerados., (*29)

Todos os métodos

Método Ação Retorno
setLanguage() Alterar idioma dos registros boolean
setDBHost() Inserir nome do host/servidor nothing
setDBName() Nome do banco de dados. nothing
setDBUser() Nome do usuĂĄrio do banco de dados. nothing
setDBPass() Senha do banco de dados. nothing
run() Iniciar a conexĂŁo do banco de dados (necessĂĄrio apenas quando utilizar o modo 3 de conexĂŁo com o DB). nothing
insert() Inserir dados A quantidade de linhas inseridas
select() Selecionar dados Todos os dados selecionados
selectManual() Selecionar dados com SQL manual Os dados selecionados
update() Atualizar dados Quantidade de linhas alteradas
delete() Remover linhas A quantida de linhas afetadas
connStatus() Verifica se a conexĂŁo com o banco de dados existe boolean
log() nothing Todo o log do objeto

Changelog

  • 1.0.1

Corrigido problema na instĂąncia do CRUD e PDO., (*30)

  • 1.0.2

Adicionado mais comentĂĄrios na classe., (*31)

  • 1.0.3

Correção do método hash., (*32)

  • 1.0.4

Suporte para mĂșltiplos "inserts"., (*33)

  • 1.0.5

Suporte para SQL montada., (*34)

  • 1.0.6

Comentårios e pequenas correçÔes;, (*35)

Melhorado o sistema de logs., (*36)

  • 1.0.7

Correção para mĂșltiplos inserts., (*37)

  • 1.0.8

Agora é possível utilizar WHERE com outras condiçÔes (>, <>, <, etc...);, (*38)

Corrigido o problema para inserir arrays multidimensional., (*39)

  • 1.0.9

Correção ao inserir vårias linhas com arrays;, (*40)

Suporte para receber traduçÔes para os logs;, (*41)

Alterado os nomes dos metodos para melhorar o uso;, (*42)

A versão 1.0.9 NÃO é compatível com as anteriores., (*43)

  • 1.1.0

Organização estrutural., (*44)

  • 1.1.1

Correção do composer.json., (*45)

  • 1.1.2

Adiconado método para verificação de conexão com o banco de dados., (*46)

  • 1.1.3

Correção para o método selectManual., (*47)

  • 1.1.4

Adicionado o padrĂŁo singleton;, (*48)

Agora vocĂȘ deve solicitar uma instancia utilizando o mĂ©todo static getInstance()., (*49)

  • 1.1.5

Melhorado a estrutura para compreensĂŁo de outros programadores; Removido alguns processos;, (*50)

Essa é uma versão de teste e ainda irei finalizar/atualizar a documentação., (*51)

  • 1.1.8

VocĂȘ deve pegar uma instancia dessa forma agora: \PlusCrud\PlusCrud::getInstance(). VocĂȘ pode passar os argumentos pelo mĂ©todo., (*52)

Essa versĂŁo ou as superiores sĂŁo compatĂ­veis apenas com o PHP 7.1.x ou maior., (*53)

  • 1.1.9

Alteração do README.md, (*54)

Sobre

  • Licença: MIT License
  • Copyright: Jeconias Santos
  • Status: Desenvolvimento

The Versions

24/04 2018

dev-master

9999999-dev https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos

24/04 2018

1.0.8

1.0.8.0 https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos

01/04 2018

1.0.7

1.0.7.0 https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos

13/03 2018

1.0.6

1.0.6.0 https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos

13/03 2018

1.0.5

1.0.5.0 https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos

06/03 2018

1.0.4

1.0.4.0 https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos

21/02 2018

1.0.3

1.0.3.0 https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos

13/02 2018

1.0.1

1.0.1.0 https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos

13/02 2018

1.0.0

1.0.0.0 https://github.com/jeconiassantos/crud

Um CRUD para otimizar suas consultas.

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Jeconias Santos