Para que me entiendas mejor,
ANSI
Código PHP:
Ver original<?php
$obj = new stdClass();
'idmission' => 6,
'name' => '¡Comparte y Crece!'
),
'idmission' => 7,
'name' => '¡Sé un buen vecino!'
)
);
Imprime
Código HTML:
Ver original{"missions":[{"idmission":6,"name":null},{"idmission":7,"name":null}]}
UTF-8
Código PHP:
Ver original<?php
$obj = new stdClass();
'idmission' => 6,
'name' => '¡Comparte y Crece!'
),
'idmission' => 7,
'name' => '¡Sé un buen vecino!'
)
);
Imprime
Código HTML:
Ver original{"missions":[{"idmission":6,"name":"\u00a1Comparte y Crece!"},{"idmission":7,"name":"\u00a1S\u00e9 un buen vecino!"}]}
Vez como la codificación afecta la conversión a json. Si te fijas en el manual dice
Cita:
Iniciado por http://php.net/manual/en/function.json-encode.php The value being encoded. Can be any type except a resource.
This function only works with UTF-8 encoded data.
Por lo que el problema es UTF-8, una forma de resolver el problema es usar utf8_encode y trabajar con la función o lo mejor es que los archivos sean utf-8 y todo lo demás