0

http://objectmix.com/javascript/389546-reading-json-object-jquery.htmlを出発点として使用して、JSONについて多くのことを読んでいます。残念ながら、私はまったくの初心者であり、JSONオブジェクトの作成の基本について頭を悩ませることはできません。

getContact.phpというPHPページを作成しました

<?php
"Contact": {
    "ID" : "1",
    "Name" : "Brett Samuel"
}
?>

そして、次のコードを含むjavascriptファイル:

$.getJSON('getContacts.php', function(data) {
    var obj = (new Function("return " + data))();
    alert(data.Contact.Name)
});

このページhttp://msdn.microsoft.com/en-us/library/bb299886.aspxは、基本的なアプローチが正しいことを示しています。なぜこれが機能しないのか誰か教えてもらえますか?絶対に何も起こりません。

前もって感謝します。

4

3 に答える 3

4

PHPファイルにJSONが含まれていますが、これは有効なPHPではないため、エラーが発生します。

PHPを使用している場合、JSONを構築する最も簡単な方法は、最初にデータを配列として準備し(必要に応じて、関連付けまたはインデックス付け)、次にを使用して変換することjson_encode()です。(対応する。を使用してJSONをデコードすることもできますjson_decode()

[編集-コメントに応えて、PHPドキュメントを見てくださいjson_encode()-それは非常に自明です。配列を取得してに渡すとjson_encode()、JSON文字列が取得されます。

$arr = array('one', 'two', 'three');
echo json_encode($arr); //JSON string
于 2012-07-30T11:57:50.180 に答える
1

JSONはプログラミング言語ではなく、PHPとして実行可能ではありません。単なるファイル形式です。Webサーバーで静的JSONファイルを提供する場合は、タグなしでファイル名.jsonとしてファイルシステムにドロップするだけです。<?php(もちろん、HTMLの場合と同様に.php、ファイルの接尾辞では自動的に行われないため、Content-Typeを設定する以外は、ファイルにしてPHPを含まないようにすることもできます。しかしそれは無駄です。)

PHPを使用してJSONを動的に生成する場合は、PHPコードを記述して出力する必要があります。例:

<?= json_encode( array( 
      'Contact' => array('ID' => 1, 'Name' => 'Brett Samuel' ) 
    ) ); ?>

また、JSONドキュメントは完全なオブジェクトである必要があることに注意してください。あなたのものは、全体の周りに別の中括弧のセットを必要とします(上記のスニペットによって出力されるように)。

于 2012-07-30T12:02:04.110 に答える
0

json_encodeとjson_decodeを使用する必要がありますこのjsonphpマニュアルを参照してください

于 2012-07-30T12:00:08.797 に答える