Mysql
 sql >> Datenbank >  >> RDS >> Mysql

ZF2 bereinigt Variablen für DB-Abfragen

Sie können beim Ausführen Parameter übergeben..

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

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

Sie können sie auch direkt an die Abfragemethode übergeben

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

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

Beide erzeugen die Abfrage "Select * from test WHERE id ='99'"

Wenn Sie benannte Parameter verwenden möchten:

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

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

Wenn Sie Ihre Tabellen-/Feldnamen usw. zitieren möchten:

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

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