0

私の理解では、サーバー側 (PHP) に対して Ajax 呼び出しを行うときに、呼び出しで許可されるデータ型を指定できます。これが JSON オブジェクトであることがよくあります。

この Ajax 呼び出しで指定できる他のオブジェクト タイプはありますか?

JSONはJavascript用であるため、対応する形式のデータが必要ですが、PHPビューで行われるように、フェッチされたクエリ結果オブジェクトを直接使用しないのはなぜですか?

4

2 に答える 2

4

JavaScript と PHP は、生データ (プレーン テキスト文字列と考えることができます) を使用して、HTTP 経由で相互に通信します。データ変換は、この生データを受け取るときに言語インタープリターによって処理されます。したがって、JavaScript オブジェクトをやり取りしているように見えますが、実際には JSON 形式の文字列を渡しているだけで、JavaScript ライブラリがそれらを自動的に解析している可能性があります。

PHP は、この生データの発行によってのみ HTTP リクエストからデータを返すことができます。これは通常、文字列変換になります。たとえば、クエリ結果オブジェクトがあるとします。次のようにします。

echo $result_object

これは何でもかまいません。おそらく、「Object (#1Result)」、またはオブジェクトの toString メソッドが何であれ、エコーアウトするでしょう。これは、JavaScript 側ではあまり役に立ちません。

PHP ビューと言って何を意味しているのかわかりませんが、何らかのテンプレート エンジンを使用していると思います。これは PHP で書かれており、php オブジェクト自体を操作して、何らかの形式 (おそらく HTML) で出力する必要があるデータを取得できます。

あなたの質問が、HTML ではなく JSON を使用する方が良い理由である場合は、選択に関係なく、多くの長所と短所があります。JSON は、サイズがコンパクトで単純であるため、一般に適切な選択です。生の HTML を実際に表示したい場合は、クライアントで JSON から HTML を再作成するのではなく、HTML を送信する方が簡単です。

于 2013-08-30T14:09:14.027 に答える
1

呼び出しはjavascript関数によって起動されておりAJAX(そうではありませんか?)、結果はjavascriptコールバック関数に返されているため、(クライアント側で)javascriptを操作しています。

JSON、プレーンテキスト、XML などを返すことができますが、どの形式で作業しているかに注意する必要があり、現時点では JSON が最適なオプションです。

于 2013-08-30T14:07:57.817 に答える