public function distinctOn($propertyName)
    {
        $values = [];
        $keys = [];
        foreach ($this as $key => $entity) {
            if (in_array($entity->$propertyName, $values)) {
                $keys[] = $key;
            } else {
                $values[] = $entity->$propertyName;
            }
        }
        $this->offsetUnset($keys);
        return $this;
    }
public function distinctOn($propertyName)
    {
        $values = [];
        $keys = [];
        foreach ($this as $key => $entity) {
            if (in_array($entity->$propertyName, $values)) {
                $keys[] = $key;
            } else {
                $values[] = $entity->$propertyName;
            }
        }
        $this->offsetUnset($keys);
        return $this;
    }
public function distinctOn ( $ propertyName ) { $ values = [ ] ; $ keys = [ ] ; foreach ( $ this as $ key => $ entity ) { if ( in_array ( $ entity -> $ propertyName , $ values ) ) { $ keys [ ] = $ key ; } else { $ values [ ] = $ entity -> $ propertyName ; } } $ this -> offsetUnset ( $ keys ) ; return $ this ; }
Eliminates entities that contains the same value in given property

@param string $propertyName Name of the property

@return static
Eliminates entities that contains the same value in given property