sql >> データベース >  >> RDS >> Mysql

json_decode(json_encode(インデックス付き配列))はNULLを返します

    JavaScriptとJSONでは、行の戻り値を文字列に含めることはできません。それらを脱出する必要があります。

    json_encode() 自動的にエスケープする必要があります。

    PHPインタラクティブシェルで提供されたJSONコードで遊んだ結果は次のとおりです。

    php > $json = '{"content":"aaa
    php ' bbb"}';
    php > var_dump(json_decode($json, true));
    NULL
    

    ご覧のとおり、ラインリターンをエスケープすると、問題なく機能します。

    php > $json = '{"content":"aaa\n bbb"}';
    php > var_dump(json_decode($json, true));
    array(1) {
      ["content"]=>
      string(8) "aaa
     bbb"
    }
    

    これは、同様の問題に関連する前の質問でもさらに説明されています:jQueryで改行を含むJSON形式のテキストを取得する際の問題




    1. Oracleは、解析された文字列/clob行から複数​​のサブ文字列を返す方法を提供していますか?

    2. PostgreSQL関数リターンテーブル

    3. ASCII拡張文字128以降を削除(SQL)

    4. JDBCタイプスクロールインセンシティブおよびセンシティブ