Lehre - Wie man bind-array, um die SQL?

Mein SQL sieht ungefähr so aus:

$sql = "select * from user where id in (:userId) and status = :status";

$em = $this->getEntityManager();
$stmt = $em->getConnection()->prepare($sql);
$stmt->bindValue(':userId', $accounts, \Doctrine\DBAL\Connection::PARAM_INT_ARRAY);
$stmt->bindValue(':status', 'declined');
$stmt->execute();

$result = $stmt->fetchAll();

Aber es gibt:

Eine Ausnahme während der Ausführung (...)

mit params
[[1,2,3,4,5,6,7,8,11,12,13,14], "abgelehnt"]

Hinweis: Arrays zu-string-Konvertierung

Kann ich nicht Benutzer queryBuilder weil mein echtes SQL ist komplizierter (ex. enthält beigetreten auswählen, Gewerkschaften und so weiter)

  • Können Sie foreach verwenden? foreach($accounts as $key => $val) { $stmt->bindValue(':userId', $val); }
InformationsquelleAutor breq | 2016-05-13
Schreibe einen Kommentar