src/Controller/Api/AbstractController.php line 10

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Api;
  3. use FOS\RestBundle\Controller\AbstractFOSRestController;
  4. use Symfony\Component\Form\FormInterface;
  5. class AbstractController extends AbstractFOSRestController
  6. {
  7.     /**
  8.      * Return form errors as readable array
  9.      *
  10.      * @param FormInterface $form
  11.      * @return array
  12.      */
  13.     protected function getFormErrorMessages(FormInterface $form)
  14.     {
  15.         $formErrors      $form->getErrors(true);
  16.         $formErrorsArray = [];
  17.         foreach ($formErrors as $formError) {
  18.             $origin    $formError->getOrigin();
  19.             $parent    $origin->getParent();
  20.             $errorName $origin->getName();
  21.             while ($parent !== null) {
  22.                 $errorName $parent->getName() . '.' $errorName;
  23.                 $parent    $parent->getParent();
  24.             }
  25.             $formErrorsArray[$errorName] = $formError->getMessage();
  26.         }
  27.         return $formErrorsArray;
  28.     }
  29. }