Usando o Zend_Db para conectar no MySql

O Zend_Db é suas classes relacionadas fornecem uma interface simples para conexão com banco de dados.

/* A classe Zend_Db sozinha não conecta com o banco, ela apenas faz uma ponte mais fácil para criar estas conexões. Você precisará que a biblioteca de conexão com o banco que escolher esteja habilitado. */

Vou demonstrar aqui a conexão com banco de dados MySql, e para isso é necessário que a biblioteca MySqli
esteja habilitada.

Primeiro vamos criar a tabela na nossa base de dados:

Banco de dados zendbrasil:

CREATE TABLE `teste` (
    `USUARIO_ID` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `USUARIO_NOME` VARCHAR( 120 ) NOT NULL
);

E vamos inserir alguns dados:

INSERT INTO `teste` (
    `USUARIO_ID` ,
    `USUARIO_NOME`
)
VALUES ( NULL , 'Usuario 1' ),
       ( NULL , 'Usuario 2' ),
       ( NULL , 'Usuario 3' ),
       ( NULL , 'Usuario 4' );

Agora que temos a tabela e temos 4 valores, vamos conectar mais primeiro vamos configurar a conexão:

<?php
require_once 'Zend/Config.php';
require_once 'Zend/Db.php';
$params ['host'] = 'localhost';
$params ['dbname'] = 'zendbrasil';
$params ['username'] = 'root';
$params ['password'] = '';
$database ['adapter'] = 'Mysqli';
$database ['params'] = $params;
$data ['database'] = $database;

$config = new Zend_Config ( $data );
$db = Zend_Db::factory($config->database);

Para conexão há diversas opções, veja bem se a estensão esta ativada antes de esolhe-la. Para mais detalhes veja quais estão disponíveis na Zend/Db/.

Agora que temos a conexão esta configurada vamos a uma pequena conexão usando o método fetchAll:

<?php
$sql = "SELECT * FROM `teste` ";
$result = $db->fetchAll($sql);

echo '<pre>';
print_r($result);

A resposta é um array iniciada de zero contendo todos os itens de cada linha da tabela.

A resposta apresentada pelo print_r é apresentada abaixo:

Array
(
    [0] => Array
        (
            [USUARIO_ID] => 1
            [USUARIO_NOME] => Usuario 1
        )

    [1] => Array
        (
            [USUARIO_ID] => 2
            [USUARIO_NOME] => Usuario 2
        )

    [2] => Array
        (
            [USUARIO_ID] => 3
            [USUARIO_NOME] => Usuario 3
        )

    [3] => Array
        (
            [USUARIO_ID] => 4
            [USUARIO_NOME] => Usuario 4
        )

)

Já usando o método fetchAssoc temos um array ao qual o índice é formado pela chave primária da tabela.

<?php
$sql = "SELECT * FROM `teste` ORDER BY `USUARIO_ID` DESC ";
$result = $db->fetchAssoc($sql);

echo '<pre>';
print_r($result);

Veja a resposta:

Array
(
    [4] => Array
        (
            [USUARIO_ID] => 4
            [USUARIO_NOME] => Usuario 4
        )

    [3] => Array
        (
            [USUARIO_ID] => 3
            [USUARIO_NOME] => Usuario 3
        )

    [2] => Array
        (
            [USUARIO_ID] => 2
            [USUARIO_NOME] => Usuario 2
        )

    [1] => Array
        (
            [USUARIO_ID] => 1
            [USUARIO_NOME] => Usuario 1
        )

)

Em próximos post irei comentar sobre inserir e outros.

Baixe aqui todos os exemplos deste site.

Fique por dentro de nossas novidades, ideias e atualizações