giovanniramos/PDO4You

Redundâncias

luizfonseca opened this issue · 2 comments

Vendo os exemplos, e notando o mesmo molde, gostaria de propor uma sugestão:

<?php
$sql = '
{
    query : [
        {
            table: "users" ,
            values: { mail: "teste@gmail.com" }
        }
    ] 
}
';

// A variável $result armazena, como retorno do método, um array com o ID de cada operação de inserção
$result = PDO4You::insert($sql);
?>

Para cada query que desejemos executar, temos que inserir o mesmo padrão: "query : [{ table: "users", values: "etc"}] e depois executar uma operação própria como ::insert($sql), ::delete($sql) e assim por diante.

Proponho as seguintes modificações:

  • Mudar o formato da sql para atender operações em específico, por exemplo:
<?php
$sql = '
{
    insert : [
        {
            table: "users" ,
            values: { mail: "teste@gmail.com" }
        }
    ] 
}
';

// A variável $result armazena, como retorno do método, um array com o ID de cada operação de inserção
$result = PDO4You::execute($sql);
?>

Note a alteração no formato:

  • ao invés de "query" mudamos para a operação que queremos executar.
  • executar agora se prende somente à um método: ::execute($sql)

Assim evitamos duplicação e redundância de lógica (pelo menos em minha visão). Se concordar, remeterei um pull request com as modificações necessárias (e "enxugamento" de alguns métodos).

Proposta Aceita!!

Adicionado na atualização da classe para versão 3.1.