0

json オブジェクト フィールドで html 応答を返しています$o->sHtml

テストsHtmlは約13000文字で、json_encodeその後$o->sHtml = null. 理由はありますか?

4

1 に答える 1

4

Json エンコードは、UTF-8 でエンコードされたデータでのみ機能します。入力データがutf8かどうかを確認してください

$json  = json_encode($o->sHtml); //or json_encode($o);
$error = json_last_error();
var_dump($json, $error === JSON_ERROR_UTF8);

これらは考えられるエラーです

JSON_ERROR_NONE -   No error has occurred    
JSON_ERROR_DEPTH -  The maximum stack depth has been exceeded    
JSON_ERROR_STATE_MISMATCH - Invalid or malformed JSON    
JSON_ERROR_CTRL_CHAR -Control character error, possibly incorrectly encoded  
JSON_ERROR_SYNTAX - Syntax error     
JSON_ERROR_UTF8 -   Malformed UTF-8 characters, possibly incorrectly encoded

参照: http://www.php.net/manual/en/function.json-last-error.php

于 2013-01-31T09:59:06.567 に答える