Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RoyalFlush

json_encode sem retorno

Recommended Posts

Olá's!

Estou utilizando Windows como máquina de desenvolvimento PHP pela primeira vez, não seu se o problema é relacionado a isso, mas no meu servidor tenho uma aplicação com vários retornos em json, utilizando json_encode, mas quando tento rodar a mesma aplicação localmente todos os retornos são em branco, alguém já passou por isso?

 

O problema só ocorre com esse método, se eu usar um var_dump por exemplo, vejo todos os dados do meu array.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Por incrível que pareça não tem logs de erro, reparei que o php.ini não tinha a linha do json, mas no server tbm não tem. Acabei fazendo o ajuste que eu precisava (era pouca coisa) direto no server, não é nem de longe uma boa prática, mas resolveu o meu problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá.

 

Verifique a utilização de caracteres especiais, acentos, cedilhas, entre outros.
Tente usar um utf8_encode/decode antes do json_encode.

 

Segue alguns trechos de código que utilizei.

 

 

//retorna o encode dos valores de um array em utf-8

function arrUtf8Encode($arr) {
foreach($arr as $key => $value){
$arr[$key] = utf8_encode($value);
}
return $arr;
}
//retorna o decode dos valores de um array em utf-8
function arrUtf8Decode($arr) {
foreach($arr as $key => $value){
$arr[$key] = utf8_decode($value);
}
return $arr;
}
utilização
echo json_encode(arrUtf8Encode($retorno));
echo json_decode(arrUtf8Encode($retorno));
Obs: não sei se a solução exata é a utilização do encode ou decode, faz tempo que tive este problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.