PhpSigep\Services\Real\SoapClientFactory::convertEncoding PHP Метод

convertEncoding() публичный статический Метод

Se possível converte a string recebida.
public static convertEncoding ( $string ) : boolean | string
$string
Результат boolean | string
    public static function convertEncoding($string)
    {
        $to = 'UTF-8';
        $from = self::WEB_SERVICE_CHARSET;
        $str = false;
        if (function_exists('iconv')) {
            $str = iconv($from, $to . '//TRANSLIT', $string);
        } elseif (function_exists('mb_convert_encoding')) {
            $str = mb_convert_encoding($string, $to, $from);
        }
        if ($str === false) {
            $str = $string;
        }
        return $str;
    }

Usage Example

Пример #1
0
 /**
  * @param \PhpSigep\Model\AbstractModel|\PhpSigep\Model\SolicitaEtiquetas $params
  *
  * @throws \PhpSigep\Services\Exception
  * @throws InvalidArgument
  * @return BuscaClienteResult
  */
 public function execute(AbstractModel $params)
 {
     if (!$params instanceof \PhpSigep\Model\AccessData) {
         throw new InvalidArgument();
     }
     $soapArgs = array('idContrato' => $params->getNumeroContrato(), 'idCartaoPostagem' => $params->getCartaoPostagem(), 'usuario' => $params->getUsuario(), 'senha' => $params->getSenha());
     $result = new Result();
     try {
         if (!$params->getUsuario() || !$params->getSenha() || !$params->getNumeroContrato() || !$params->getCartaoPostagem()) {
             throw new Exception('Para usar este serviço você precisa setar o nome de usuário, a senha, o numero ' . 'do contrato e o número do cartão de postagem.');
         }
         $r = SoapClientFactory::getSoapClient()->buscaCliente($soapArgs);
         if (!$r || !is_object($r) || !isset($r->return) || $r instanceof \SoapFault) {
             if ($r instanceof \SoapFault) {
                 throw $r;
             }
             throw new \Exception('Erro ao consultar os dados do cliente. Retorno: "' . $r . '"');
         }
         $result->setResult(new BuscaClienteResult((array) $r->return));
     } catch (\Exception $e) {
         if ($e instanceof \SoapFault) {
             $result->setIsSoapFault(true);
             $result->setErrorCode($e->getCode());
             $result->setErrorMsg(SoapClientFactory::convertEncoding($e->getMessage()));
         } else {
             $result->setErrorCode($e->getCode());
             $result->setErrorMsg($e->getMessage());
         }
     }
     return $result;
 }
All Usage Examples Of PhpSigep\Services\Real\SoapClientFactory::convertEncoding