Acesso ao banco de dados usando PDO - PHP.
###Conectando ao banco de dados MySql usando
Database::newConnection([
"host" => "localhost",
"dbname" => "nome_do_db",
"user" => "root",
"pass" => "123456",
"error" => function($err) {
echo $err; exit;
}
]);
###Pegando a instância da conexão
$db = Database::getInstance();
###Funções da instância
//Mesma função do mysql_real_escape_string
$campo = $db->escape('Valor do campo');
//retorna o ultimo id inserido no banco
echo $db->insertId();
//executa a query, retorna um objeto com funções
$query = $db->query('{{QUERY_STRING}}');
###Opções para o objeto gerado pelo método 'query'
//se for query de busca, retorna em objeto
$result = $query->result();
print_r($result);
//se for query de busca, retorna em array associativo
$resultAssoc = $query->resultAssoc();
print_r($resultAssoc);
//No mysql retona o total de resultados de uma query de busca ou alteração/exclusão
$numRows = $query->rowCount();
echo $numRows;
###Conectando em mais de um banco de dados
//banco1, segundo parametro da função 'newConnection' é o nome da instância, default: db
Database::newConnection([
"host" => "localhost",
"dbname" => "nome_do_db",
"user" => "root",
"pass" => "123456",
"error" => function($err) {
echo $err; exit;
}
]);
//banco2
Database::newConnection([
"host" => "localhost",
"dbname" => "nome_do_db2",
"user" => "root",
"pass" => "123456",
"error" => function($err) {
echo $err; exit;
}
], 'db2');
###Pegando a instância das conexões
//por default o getInstance passa 'db'
$db = Database::getInstance();
$db2 = Database::getInstance('db2');
###Extendendo uma classe e pegando as instâncias da biblioteca. Exemplo:
class NomeDaClasse extends Libraries\Database\Database {
function exemplo() {
//onde db é o nome da instância
$campo = $this->db->escape('campo');
}
function exemploBanco2() {
//onde db2 é o nome da instância
$campo = $this->db2->escape('campo');
}