Quiero usar Zend_Db sin Zend_Framework. Quiero incorporar Zend_Db para mi sitio web existente que no fue creado usando Zend Framework. ¿Es posible usar Zend_Db de esta manera? ¿Me puede recomendar un buen tutorial o un ejemplo de cómo hacerlo bien?Zend_Db sin Zend Framework
Respuesta
Hasta cierto punto, esto depende del marco web que está utilizando. Pero, en general, el Zend_Db documentation es bastante claro en este sentido.
Crea una instancia de adaptador en tu rutina de arranque. A modo de ejemplo:
$db = Zend_Db::factory('Pdo_Mysql', array(
'host' => '127.0.0.1',
'username' => 'webuser',
'password' => 'xxxxxxxx',
'dbname' => 'test'
));
Si va a utilizar Zend_Db_Table
, entonces usted puede hacer esto el adaptador por defecto:
Zend_Db_Table::setDefaultAdapter($db);
En cualquier caso, es útil tener este adaptador guardados en algún lugar donde se puede acceder eso. Por ejemplo:
Zend_Registry::set('db', $db);
Luego, en el código de aguas abajo, utilizar este adaptador para crear consultas para select()
, insert()
, update()
, delete()
, etc:
$db = Zend_Registry::get('db');
$select = $db->select()
->from('posts')
->where('cat_id = ?', $catId)
->order('date_posted DESC')
->limit(5);
$rows = $db->fetchAll($select);
Espero que esto ayude. ¡Aclamaciones!
El uso de Zend_Db incluso sería preferible (en mi humilde opinión) sobre el uso de Raw PDO. Simplemente cree un Objeto $ db y luego cree Declaraciones SQL usando la Clase Zend_Db_Select y pase la Instrucción SQL $ select a los métodos fetch * (fetchRow, fetchAll ...).
Para Zend Framework 2. *, creando el adaptador sería:
$db = new \Zend\Db\Adapter\Adapter([
'driver' => 'Pdo_Mysql',
'host' => '127.0.0.1',
'username' => 'webuser',
'password' => 'xxxxxx',
'database' => 'test',
]);
Para crear selecto:
$sql = new \Zend\Db\Sql\Sql($db);
$select = $sql->select()
->from('posts')
->where(array('cat_id' => $catId))
->order('date_posted DESC')
->limit(5);
$statement = $sql->prepareStatementForSqlObject($select);
$results = $statement->execute();
O, si desea obtener SQL puro a partir del $ seleccionar:
$selectSql = $sql->getSqlStringForSqlObject($select);
Docs puede ser útil. Puede ser incluso más simple si se usa TableGateway.
- 1. Zend Framework 2 para Zend Framework Newbie
- 2. Cómo usar Zend Library sin instalación de Zend Framework
- 3. ¿Vale la pena usar Doctrine 2 con Zend Framework?
- 4. Zend Framework bases de datos múltiples
- 5. Ejemplo Zend Framework Project 1.8+
- 6. PHP Zend Framework Generator
- 7. Zend Framework Paquetes Compositor
- 8. zend framework "$ this"
- 9. Zend Framework Oauth Provider
- 10. Zend Framework Layout
- 11. Zend Framework Casillas Anidadas
- 12. Zend Framework JSON Output
- 13. RESTful Zend Framework API
- 14. Zend Framework Checkbox Decorators
- 15. Zend Framework fetchAll
- 16. ¿Por qué debería usar Doctrine sobre Zend_Db?
- 17. ¿Utiliza los componentes de Zend Framework sin el marco real?
- 18. Usando tablas de Zend Framework Db sin MVC
- 19. Zend Framework 1.9: Cómo utilizar la carga automática sin MVC
- 20. Cómo citar nombres de columna con Zend_Db?
- 21. Zend Framework MySQL Update Column
- 22. autenticación en Zend Framework 2
- 23. cómo construir múltiples consulta de inserción en Zend Framework
- 24. Zend framework: rutas de complementos
- 25. Zend Framework 2 cargando automáticamente
- 26. Zend_Db subconsulta
- 27. Crear cronjob con Zend Framework
- 28. Zend Framework 2 ¿Buscar Lucene?
- 29. Integración PHPExcel en Zend Framework
- 30. Zend Framework Module error handling
Buena respuesta completa ... –
Gracias. Voy a intentar esto. – user594791