original_string: protected function jsonDecode(array $data): array
      {
          foreach ($data as $key => &$value) {
              if (\is_array($value)) {
                  $value = $this->jsonDecode($value);
              } elseif ($value === '') {
                  unset($data[$key]);
              } else {
                  $value = json_decode($value, true);
                  if ($value === null && json_last_error() !== JSON_ERROR_NONE) {
                      unset($data[$key]);
                      $this->setError("Badly encoded JSON data (for {$key}) was sent to the form");
                  }
              }
          }
  
          return $data;
      }
code: protected function jsonDecode(array $data): array
      {
          foreach ($data as $key => &$value) {
              if (\is_array($value)) {
                  $value = $this->jsonDecode($value);
              } elseif ($value === '') {
                  unset($data[$key]);
              } else {
                  $value = json_decode($value, true);
                  if ($value === null && json_last_error() !== JSON_ERROR_NONE) {
                      unset($data[$key]);
                      $this->setError("Badly encoded JSON data (for {$key}) was sent to the form");
                  }
              }
          }
  
          return $data;
      }
code_tokens: protected function jsonDecode ( array $ data ) : array { foreach ( $ data as $ key => & $ value ) { if ( \ is_array ( $ value ) ) { $ value = $ this -> jsonDecode ( $ value ) ; } elseif ( $ value === '' ) { unset ( $ data [ $ key ] ) ; } else { $ value = json_decode ( $ value , true ) ; if ( $ value === null && json_last_error ( ) !== JSON_ERROR_NONE ) { unset ( $ data [ $ key ] ) ; $ this -> setError ( "Badly encoded JSON data (for {$key}) was sent to the form" ) ; } } } return $ data ; }
docstring: Recursively JSON decode POST data.
  
  @param  array $data
  @return array
docstring_tokens: Recursively JSON decode POST data .