searchMethod) { SearchMethodEnum::Like => "%$this->value%", SearchMethodEnum::LikeLeft => "%$this->value", SearchMethodEnum::LikeRight => "$this->value%", default => $this->value, }; } public function operator() : string { if (isset($this->operator)) { return $this->operator; } return match ($this->searchMethod) { SearchMethodEnum::Like => SearchRequestInterface::SEARCH_REQUEST_OPERATOR_LIKE, default => SearchRequestInterface::SEARCH_REQUEST_OPERATOR_EQUAL, }; } public function condition() : string { if (isset($this->condition)) { return $this->condition; } return match ($this->searchMethod) { SearchMethodEnum::Like => SearchRequestInterface::SEARCH_REQUEST_CONDITION_OR, default => SearchRequestInterface::SEARCH_REQUEST_CONDITION_AND, }; } }