You are here

class Comparator in Database Sanitize 7

Comparator.

@author Fabien Potencier <fabien@symfony.com>

Hierarchy

  • class \Symfony\Component\Finder\Comparator\Comparator

Expanded class hierarchy of Comparator

1 file declares its use of Comparator
ComparatorTest.php in vendor/symfony/finder/Tests/Comparator/ComparatorTest.php

File

vendor/symfony/finder/Comparator/Comparator.php, line 19

Namespace

Symfony\Component\Finder\Comparator
View source
class Comparator {
  private $target;
  private $operator = '==';

  /**
   * Gets the target value.
   *
   * @return string The target value
   */
  public function getTarget() {
    return $this->target;
  }

  /**
   * Sets the target value.
   *
   * @param string $target The target value
   */
  public function setTarget($target) {
    $this->target = $target;
  }

  /**
   * Gets the comparison operator.
   *
   * @return string The operator
   */
  public function getOperator() {
    return $this->operator;
  }

  /**
   * Sets the comparison operator.
   *
   * @param string $operator A valid operator
   *
   * @throws \InvalidArgumentException
   */
  public function setOperator($operator) {
    if (!$operator) {
      $operator = '==';
    }
    if (!\in_array($operator, array(
      '>',
      '<',
      '>=',
      '<=',
      '==',
      '!=',
    ))) {
      throw new \InvalidArgumentException(sprintf('Invalid operator "%s".', $operator));
    }
    $this->operator = $operator;
  }

  /**
   * Tests against the target.
   *
   * @param mixed $test A test value
   *
   * @return bool
   */
  public function test($test) {
    switch ($this->operator) {
      case '>':
        return $test > $this->target;
      case '>=':
        return $test >= $this->target;
      case '<':
        return $test < $this->target;
      case '<=':
        return $test <= $this->target;
      case '!=':
        return $test != $this->target;
    }
    return $test == $this->target;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Comparator::$operator private property
Comparator::$target private property
Comparator::getOperator public function Gets the comparison operator.
Comparator::getTarget public function Gets the target value.
Comparator::setOperator public function Sets the comparison operator.
Comparator::setTarget public function Sets the target value.
Comparator::test public function Tests against the target.