Loading src/Action/Functions.php +8 −9 Original line number Diff line number Diff line Loading @@ -138,4 +138,3 @@ class Functions * ]; */ } No newline at end of file src/Controller/HomeController.php +13 −3 Original line number Diff line number Diff line Loading @@ -7,15 +7,25 @@ use App\Validation\ArrayValidation; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\Attribute\Route; class HomeController extends AbstractController { private Functions $functions; private function uniqElements(array $array): array { return array_unique($array, SORT_REGULAR); } public function __construct(Functions $functions) #[Route('/', name: 'home')] public function home(): Response { $this->functions = $functions; $arr = [ ['laravel', 'php'], ['codeigniter', 'php'], ['laravel', 'php'], ['c++', 'java'], ]; return $this->json($this->uniqElements($arr)); } #[Route('/', name: 'home', methods: ['POST'])] Loading src/Validation/ArrayValidation.php +14 −4 Original line number Diff line number Diff line Loading @@ -2,12 +2,22 @@ namespace App\Validation; use Symfony\Component\Validator\Validation; use Symfony\Component\Validator\Constraints as Assert; use Symfony\Component\Validator\ConstraintViolationListInterface; class ArrayValidation { public static function validateFunc1(array $array): bool { $prices = array_column($array, 'price'); $counts = array_column($array, 'count'); return ctype_digit(implode('',$prices)) && ctype_digit(implode('', $counts)); } public static function validateFunc2(array $array): bool { $ids = array_column($array, 'id'); $ages = array_column($array, 'age'); return ctype_digit(implode('', $ids)) && ctype_digit(implode('', $ages)); } public static function validate(array $array): ConstraintViolationListInterface { $validator = Validation::createValidator(); Loading Loading
src/Action/Functions.php +8 −9 Original line number Diff line number Diff line Loading @@ -138,4 +138,3 @@ class Functions * ]; */ } No newline at end of file
src/Controller/HomeController.php +13 −3 Original line number Diff line number Diff line Loading @@ -7,15 +7,25 @@ use App\Validation\ArrayValidation; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\Attribute\Route; class HomeController extends AbstractController { private Functions $functions; private function uniqElements(array $array): array { return array_unique($array, SORT_REGULAR); } public function __construct(Functions $functions) #[Route('/', name: 'home')] public function home(): Response { $this->functions = $functions; $arr = [ ['laravel', 'php'], ['codeigniter', 'php'], ['laravel', 'php'], ['c++', 'java'], ]; return $this->json($this->uniqElements($arr)); } #[Route('/', name: 'home', methods: ['POST'])] Loading
src/Validation/ArrayValidation.php +14 −4 Original line number Diff line number Diff line Loading @@ -2,12 +2,22 @@ namespace App\Validation; use Symfony\Component\Validator\Validation; use Symfony\Component\Validator\Constraints as Assert; use Symfony\Component\Validator\ConstraintViolationListInterface; class ArrayValidation { public static function validateFunc1(array $array): bool { $prices = array_column($array, 'price'); $counts = array_column($array, 'count'); return ctype_digit(implode('',$prices)) && ctype_digit(implode('', $counts)); } public static function validateFunc2(array $array): bool { $ids = array_column($array, 'id'); $ages = array_column($array, 'age'); return ctype_digit(implode('', $ids)) && ctype_digit(implode('', $ages)); } public static function validate(array $array): ConstraintViolationListInterface { $validator = Validation::createValidator(); Loading