Code Duplication    Length = 6-8 lines in 2 locations

lib/Doctrine/ODM/MongoDB/Query/FieldExtractor.php 2 locations

@@ 55-60 (lines=6) @@
52
                foreach ($elemMatchFields as $field) {
53
                    $fields[] = $k.'.'.$field;
54
                }
55
            } elseif ($this->isOperator($k, array('and', 'or'))) {
56
                foreach ($v as $q) {
57
                    $test = new self($q);
58
                    $fields = array_merge($fields, $test->getFields());
59
                }
60
            } elseif ($k[0] !== '$') {
61
                $fields[] = $k;
62
            }
63
        }
@@ 76-83 (lines=8) @@
73
                continue;
74
            }
75
76
            if ($this->isOperator($fieldName, array('and', 'or'))) {
77
                foreach ($value as $q) {
78
                    $test = new self($q);
79
                    $fields = array_merge($fields, $test->getFields());
80
                }
81
            } else {
82
                $fields[] = $fieldName;
83
            }
84
        }
85
        return $fields;
86
    }