json_decode の問題

WBOY
リリース: 2016-06-23 13:56:29
オリジナル
1029 人が閲覧しました

$bb = array(  array("id"=>"1","time"=>"5"),  array("id"=>"2","time"=>"50"),  array("id"=>"3","time"=>"555"),); print_r(json_encode($ew));
ログイン後にコピー


出力は
[{"id":"1","time":"5"},{"id":"2","time":"50"},{"id":"3","time":"555"}]
ログイン後にコピー
です

しかし、その逆は問題です

$ew='[{"id":"1","time":"5"},{"id":"2 " ,"time":"50"},{"id":"3","time":"555"}]';
print_r(json_decode($ew));



Array ( [0] => stdClass Object ( [id] => 1 [time] => 5 ) [1] => stdClass Object ( [id] => 2 [time] => 50 ) [2] => stdClass Object ( [id] => 3 [time] => 555 ) ) 
ログイン後にコピー
になる

なぜ

$bb = array(  array("id"=>"1","time"=>"5"),  array("id"=>"2","time"=>"50"),  array("id"=>"3","time"=>"555"),);
ログイン後にコピー


ディスカッションに返信 (解決策)

print_r(json_decode($ew, true));

必ずマニュアルを読んでください

json_decode ? 对 JSON 格式的字符串进行编码说明mixed json_decode ( string $json [, bool $assoc ] )接受一个 JSON 格式的字符串并且把它转换为 PHP 变量 参数json 待解码的 json string 格式的字符串。 assoc 当该参数为 TRUE 时,将返回 array 而非 object 。 
ログイン後にコピー
ログイン後にコピー

json_decode のデフォルトは object なので、変換する必要がありますArray に設定するには、2 番目のパラメータを true に設定する必要があります。

print_r(json_decode($ew,true));

必ずマニュアルを読んでください

json_decode ? 对 JSON 格式的字符串进行编码说明mixed json_decode ( string $json [, bool $assoc ] )接受一个 JSON 格式的字符串并且把它转换为 PHP 变量 参数json 待解码的 json string 格式的字符串。 assoc 当该参数为 TRUE 时,将返回 array 而非 object 。 
ログイン後にコピー
ログイン後にコピー


++

オブジェクトまたは配列を文字列形式で保存する必要がある場合、json とシリアル化の利点は何ですか?

先生、これは正常ですよね?

json は基本的にすべての言語で使用できます

オブジェクトまたは配列を文字列形式で保存する必要がある場合、json とシリアル化の利点は何ですか?


json は外部通信に使用されます
シリアル化は内部通信に使用されます

json は外部通信に使用されます
シリアル化は内部通信に使用されます


ありがとうございます。データベースを保存したり、キャッシュ ファイルを書き込んだりする場合はどうでしょうか。異なる言語の相互作用を伴わないものはどれでしょうか?
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート