Wiem, że to jest stare, ale nie znalazłem wyjaśnienia tego błędu, w moim przypadku problemem było zachowanie wartości na DB ze znakiem akcentu (Ej:cafetería). var_dump($emparray ) z pewnością pokazuje informacje, ale echo json_ecode($emparray ) nic nie pokazuje. Rozwiązanie?
To jest moje połączenie z bazą danych:
$connection = mysqli_connect('ip,'user','pass','dbname')
or die("Error " . mysqli_error($connection));
Wystarczy dodać poprawny zestaw znaków:
mysqli_set_charset( $connection, 'utf8');
Oczekuje tej pracy dla innych.