</div>
</div>
</div>
<hr class="my12 outline-none baw0 bb bc-powder-2">
<div class="grid fw-nowrap fc-black-600">
<div class="grid--cell mr8">
<svg aria-hidden="true" class="svg-icon iconLightbulb" width="18" height="18" viewbox="0 0 18 18"><path d="M9.5.5a.5.5 0 0 0-1 0v.25a.5.5 0 0 0 1 0V.5zm5.6 2.1a.5.5 0 0 0-.7-.7l-.25.25a.5.5 0 0 0 .7.7l.25-.25zM1 7.5c0-.28.22-.5.5-.5H2a.5.5 0 0 1 0 1h-.5a.5.5 0 0 1-.5-.5zm14.5 0c0-.28.22-.5.5-.5h.5a.5.5 0 0 1 0 1H16a.5.5 0 0 1-.5-.5zM2.9 1.9c.2-.2.5-.2.7 0l.25.25a.5.5 0 1 1-.7.7L2.9 2.6a.5.5 0 0 1 0-.7z" fill-opacity=".4"></path><path opacity=".4" d="M7 16h4v1a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-1z" fill="#3F3F3F"></path><path d="M15 8a6 6 0 0 1-3.5 5.46V14a1 1 0 0 1-1 1h-3a1 1 0 0 1-1-1v-.54A6 6 0 1 1 15 8zm-4.15-3.85a.5.5 0 0 0-.7.7l2 2a.5.5 0 0 0 .7-.7l-2-2z" fill="#FFC166"></path></svg>
</div>
<div class="grid--cell lh-md">
<p class="mb0">
<b>Want to improve this question?</b> Update the question so it can be answered with facts and citations by <a href="/posts/30709776/edit">editing this post</a>.
</p>
<p class="mb0 mt6">Closed <span title="2015-06-08 14:09:51Z" class="relativetime">4 years ago</span>.</p>
</div>
</div>
</aside>
I need to get an array
from PHP
to JS
using AJAX
.
I use a standard ajax call and the data is returned as an object.
I can easily loop through this using Jquery
.
After reading many posts online, the common practice is to send back JSON
.
My question is, why use JSON
. If I was to use it, I would need to convert the array to JSON
PHP side (server side ) and then parse it in the JS (client side) to be able to loop through it.
Why use JSON
if it requires these extra steps, why not just parse back an object from PHP
.
Am I missing something obvious here?
</div>
I use a standard ajax call and the data is returned as an object.
No, it isn't. The data is sent in some (probably) text format (such as JSON).
Some code then converts it into an object. jQuery (for instance) will do that automatically if the server sends back a Content-Type: application/json
header or if you specify dataType: "json"
in the options.
My question is, why use JSON.
It is:
Why use JSON if it requires these extra steps, why not just parse back an object from PHP.
You can't pass an "object" back from PHP because an object is just a program's understanding about how a bunch of pieces of data in the computer's RAM relate to each other.
Sending it to another computer would be akin to sending the thoughts in your head to another brain.
You have to translate them into a shared, transmittable language first.
JSON is - you right - the way.
JSON is easy & quick to parse with JavaScript. JSON : JavaScript Object Notation.
Easier & faster to parse than xml, the old past way.
Json or XML, cause Php object cannot be passed to JS... But you easily can convert : json_encode(phparray)
That s it : json is that way common to php and JS...
The answer is quite simple:
PHP is a server-side language which is interpret by PHP's zend engine where as javascript is a client-side language which is interpret by javascript engine.
So javascript engine can't understand PHP objects that's why we are converting PHP object into a JSON objects which are understand by PHP's zend engine as well as javascript engine.