WP-Database-Helper/enums/Operator.php
2025-02-12 15:03:39 +01:00

38 lines
964 B
PHP

<?php
namespace DatabaseHelper\enums;
use InvalidArgumentException;
enum Operator
{
case EQUAL;
case NOT_EQUAL;
case GREATER;
case GREATER_EQUAL;
case LESS;
case LESS_EQUAL;
public static function fromString(string $operator): self {
return match ($operator) {
'=' => self::EQUAL,
'!=' => self::NOT_EQUAL,
'>' => self::GREATER,
'>=' => self::GREATER_EQUAL,
'<' => self::LESS,
'<=' => self::LESS_EQUAL,
default => throw new InvalidArgumentException("Invalid operator: $operator"),
};
}
public function toString(): string {
return match ($this) {
self::EQUAL => '=',
self::NOT_EQUAL => '!=',
self::GREATER => '>',
self::GREATER_EQUAL => '>=',
self::LESS => '<',
self::LESS_EQUAL => '<=',
};
}
}