You are here

public function SmartlingApiException::formatErrors in TMGMT Translator Smartling 8.4

Same name and namespace in other branches
  1. 8.2 api-sdk-php/src/Exceptions/SmartlingApiException.php \Smartling\Exceptions\SmartlingApiException::formatErrors()
  2. 8.2 vendor/smartling/api-sdk-php/src/Exceptions/SmartlingApiException.php \Smartling\Exceptions\SmartlingApiException::formatErrors()
  3. 8.3 vendor/smartling/api-sdk-php/src/Exceptions/SmartlingApiException.php \Smartling\Exceptions\SmartlingApiException::formatErrors()

Format errors.

Parameters

string $title:

Return value

string

File

vendor/smartling/api-sdk-php/src/Exceptions/SmartlingApiException.php, line 91

Class

SmartlingApiException
Class SmartlingApiException @package Smartling\Exceptions

Namespace

Smartling\Exceptions

Code

public function formatErrors($title = '') {
  $errorsStr = PHP_EOL;
  foreach ($this->errors as $k => $error) {
    $details = [];
    if (isset($error['details']) && is_array($error['details'])) {
      foreach ($error['details'] as $name => $value) {
        $details[] = sprintf('%s:%s', $name, $value);
      }
    }
    $body = sprintf('key: %smessage: %sdetails: %s', $error['key'] . PHP_EOL, $error['message'] . PHP_EOL, implode(' | ', $details) . PHP_EOL);
    $errorsStr .= $body . self::ERROR_OUTPUT_SEPARATOR . PHP_EOL;
  }
  $messageTemplate = $title . PHP_EOL . 'Response code: %s' . PHP_EOL . 'Response errors (%s): %s%s' . PHP_EOL;
  $output = vsprintf($messageTemplate, [
    $this
      ->getCode(),
    count($this->errors),
    PHP_EOL . self::ERROR_OUTPUT_SEPARATOR,
    $errorsStr,
  ]);
  return $output;
}