cleanInputCode($code); $codes = json_decode($codeSet); return in_array($cleanCode, $codes); } /** * Remove the given input code from the given available options. * Will return a JSON string containing the codes. */ public function removeInputCodeFromSet(string $code, string $codeSet): string { $cleanCode = $this->cleanInputCode($code); $codes = json_decode($codeSet); $pos = array_search($cleanCode, $codes, true); array_splice($codes, $pos, 1); return json_encode($codes); } /** * Count the number of codes in the given set. */ public function countCodesInSet(string $codeSet): int { return count(json_decode($codeSet)); } protected function cleanInputCode(string $code): string { return strtolower(str_replace(' ', '-', trim($code))); } }