From 7c28a932aef9f4fb61ba37370623f027f8a03546 Mon Sep 17 00:00:00 2001 From: Mathieu Duplouy Date: Sat, 30 Sep 2017 15:31:41 +0200 Subject: [PATCH] Add operator to walkComparison output --- .../ORM/Persisters/Collection/ManyToManyPersister.php | 9 +++++---- lib/Doctrine/ORM/Persisters/SqlValueVisitor.php | 8 ++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/Doctrine/ORM/Persisters/Collection/ManyToManyPersister.php b/lib/Doctrine/ORM/Persisters/Collection/ManyToManyPersister.php index 176ef37ee..84d5ccfbc 100644 --- a/lib/Doctrine/ORM/Persisters/Collection/ManyToManyPersister.php +++ b/lib/Doctrine/ORM/Persisters/Collection/ManyToManyPersister.php @@ -259,10 +259,11 @@ class ManyToManyPersister extends AbstractCollectionPersister $parameters = $this->expandCriteriaParameters($criteria); foreach ($parameters as $parameter) { - list($name, $value) = $parameter; - $field = $this->quoteStrategy->getColumnName($name, $targetClass, $this->platform); - $whereClauses[] = sprintf('te.%s = ?', $field); - $params[] = $value; + [$name, $value, $operator] = $parameter; + + $field = $this->quoteStrategy->getColumnName($name, $targetClass, $this->platform); + $whereClauses[] = sprintf('te.%s %s ?', $field, $operator); + $params[] = $value; } $tableName = $this->quoteStrategy->getTableName($targetClass, $this->platform); diff --git a/lib/Doctrine/ORM/Persisters/SqlValueVisitor.php b/lib/Doctrine/ORM/Persisters/SqlValueVisitor.php index 78fd0333b..a5df126c4 100644 --- a/lib/Doctrine/ORM/Persisters/SqlValueVisitor.php +++ b/lib/Doctrine/ORM/Persisters/SqlValueVisitor.php @@ -50,9 +50,9 @@ class SqlValueVisitor extends ExpressionVisitor */ public function walkComparison(Comparison $comparison) { - $value = $this->getValueFromComparison($comparison); - $field = $comparison->getField(); - $operator = $comparison->getOperator(); + $value = $this->getValueFromComparison($comparison); + $field = $comparison->getField(); + $operator = $comparison->getOperator(); if (($operator === Comparison::EQ || $operator === Comparison::IS) && $value === null) { return; @@ -61,7 +61,7 @@ class SqlValueVisitor extends ExpressionVisitor } $this->values[] = $value; - $this->types[] = [$field, $value]; + $this->types[] = [$field, $value, $operator]; } /**