sql >> Base de Datos >  >> RDS >> Mysql

ZF2 desinfecta variables para consultas de base de datos

Puede pasar parámetros cuando ejecuta..

 $statement = $this->getAdapter()->query("Select * from test WHERE id = ?");
 $result = $statement->execute(array(99));

 $resultSet = new ResultSet;
 $resultSet->initialize($result);

También puede pasarlos directamente al método de consulta

 $statement = $this->getAdapter()->query(
    "Select * from test WHERE id = ?", 
    array(99)
 );
 $result = $statement->execute();

 $resultSet = new ResultSet;
 $resultSet->initialize($result);

Ambos generarán la consulta "Seleccionar * de prueba DONDE id ='99'"

Si desea utilizar parámetros con nombre:

$statement = $this->getAdapter()->query("Select * from test WHERE id = :id");
$result = $statement->execute(array(
    ':id' => 99
));

$resultSet = new ResultSet;
$resultSet->initialize($result);

Si desea citar los nombres de su tabla/campo, etc.:

$tablename = $adapter->platform->quoteIdentifier('tablename');

$statement = $this->getAdapter()->query("Select * from {$tablename} WHERE id = :id");
$result = $statement->execute(array(
    ':id' => 99
));