From f7b99d7676d9c50480ecd54ae5a37c9535973e24 Mon Sep 17 00:00:00 2001 From: Ryan Cramer Date: Tue, 26 Mar 2019 12:21:18 -0400 Subject: [PATCH] Fix issue processwire/processwire-issues#837 --- wire/core/Selector.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/wire/core/Selector.php b/wire/core/Selector.php index 4eee4755..1c51e5f3 100644 --- a/wire/core/Selector.php +++ b/wire/core/Selector.php @@ -352,9 +352,11 @@ abstract class Selector extends WireData { // $values1 is the value stored by the selector // $values2 is the value passed into the matches() function - $numMatches = 0; - if($operator == '!=') $numMatchesRequired = (count($values1) + count($values2)) - 1; - else $numMatchesRequired = 1; + $numMatches = 0; + $numMatchesRequired = 1; + if(($operator === '!=' && !$this->not) || ($this->not && $operator !== '!=')) { + $numMatchesRequired = count($values1) * count($values2); + } $fields = is_array($field) ? $field : array($field);