PHP code example of 07matheus / db_manager

1. Go to this page and download the library: Download 07matheus/db_manager library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

07matheus / db_manager example snippets


  

  use \MatheusV\DBManager\Db\Sql;

  $sql = new Sql('name_table');

  

  use \MatheusV\DBManager\Db\Sql;

  $sql        = new Sql('pessoa');
  $resultados = $sql->select('id, nome_pessoa')->send()->fetchAll(PDO::FETCH_ASSOC);

  print_r($resultados);

  

  use \MatheusV\DBManager\Db\Sql;
  use \MatheusV\DBManager\Table\ModeloTabela;

  class Pessoa implements ModeloTabela {
    private $id   = null;
    private $nome = null;

    public function getProperties() : array {
      return [
        'id'         => 'id',
        'nomePessoa' =>  'nome_pessoa'
      ];
    }

    public function camposSemAspas(): array {
      return ['id']; 
    }
  }

  $sql            = new Sql('pessoa');
  $dados          = ['id' => 1, 'nome' => 'Pessoa 3'];
  $camposSemAspas = ['id'];

  // INSERE UM NOVO REGISTRO VIA ARRAY DE DADOS
  $sql->insert($dados, $camposSemAspas)->send();
  // ATUALIZA UM REGISTRO
  $sql->update($dados, $camposSemAspas)->where(['id = 2'])->send();
  // ATUALIZA OU INSERE UM REGISTRO
  $sql->replace($dados, $camposSemAspas)->send();

  // OU
  $obUsuario            = new Pessoa;
  $obPessoa->id         = 1;
  $obPessoa->nomePessoa = "Pessoa 3";

  // INSERE UM NOVO REGISTRO COM UM OBJETO DE PESSOA
  $sql->insert($obPessoa, $obPessoa->camposSemAspas(), true)->send();
  // ATUALIZA UM REGISTRO
  $sql->update($obPessoa, $obPessoa->camposSemAspas(), true)->where(['id = 2'])->send();
  // ATUALIZA OU INSERE UM REGISTRO
  $sql->replace($obPessoa, $obPessoa->camposSemAspas(), true)->send();

  

  use \MatheusV\DBManager\Db\Sql;

  $sql = new Sql('pessoa');
  $sql->delete()->where(['id = 1'])->send();

  

  use \MatheusV\DBManager\Db\Sql;

  $sql = new Sql('pessoa');
  $sql->select()->send(true);

  

  use \MatheusV\DBManager\Db\Sql;

  $sql       = new Sql('pessoa');
  $condicoes = [
    'id > 1', 'nome LIKE "Pessoa%"'
  ];

  $sql->select()->where($condicoes)->send();

  

  use \MatheusV\DBManager\Db\Sql;

  $sql   = new Sql('pessoa');
  $order = [
    'ASC'  => 'id',
    'DESC' => 'nome'
  ];

  $sql->select()->order($order)->send();

  

  use \MatheusV\DBManager\Db\Sql;

  $sql   = new Sql('pessoa');
  $group = ['id_profissao'];

  $sql->select()->group($group)->send();

  

  use \MatheusV\DBManager\Db\Sql;

  $sql  = new Sql('pessoa');
  $join = [
    'profissao' => 'profissao.id = pessoa.id_profissao'
  ];

  $sql->select()->innerJoin($join)->send();
  $sql->select()->leftJoin($join)->send();

  

  use \MatheusV\DBManager\Db\Sql;

  $sql = new Sql('pessoa');
  $sql->select()->setLimit(10)->send();

  

  use \MatheusV\DBManager\Db\Sql;

  $sql = new Sql('pessoa');
  $sql->select()->setOffset(10)->send();

  

  use \MatheusV\DBManager\Table\{GetSet, ModeloTabela};

  // CLASSE MODELO DA TABELA `pessoa`
  class Pessoa implements ModeloTabela {
    use GetSet;

    private $id          = null;
    private $nome        = null;
    private $idProfissao = null;

    public function getProperties() : array {
      // [propriedadeClasse => campo_tabela]
      return [
        'id'          => 'id',
        'nome'        => 'nome',
        'idProfissao' => 'id_profissao'
      ];
    }

    public function camposSemAspas() : array {
      return ['id', 'id_profissao'];
    }
  }


  
  $obPessoa = new Pessoa;

  // ADICIONANDO VALORES ATRAVÉS DAS PROPRIEDADES DA CLASSE
  $obPessoa->id          = 1;
  $obPessoa->nome        = 'Pessoa 1';
  $obPessoa->idProfissao = 1;
  print_r($obPessoa);

  // ADICIONANDO VALORES ATRAVÉS DE UMA ARRAY DE DADOS
  $dados = [
    'id'          => 2,
    'nome'        => 'Pessoa 2',
    'idProfissao' => 2
  ];
  $obPessoa->setData($dados);
  print_r($obPessoa);


  
  $obPessoa              = new Pessoa;
  $obPessoa->id          = 1;
  $obPessoa->nome        = 'Pessoa 1';
  $obPessoa->idProfissao = 1;
  $obPessoa->ativo       = 's';

  print_r($obPessoa->getAttributes());
  print_r($obPessoa->getAttributes(true, true));
  print_r($obPessoa->getAttributes(false));
  print_r($obPessoa->getAttributes(false, true));