Returning JSON from a PHP Script

I want to return JSON from a PHP script.

Do I just echo the result? Do I have to set the Content-Type header?

1 Like

While you’re usually fine without it, you can and should set the Content-Type header:

<?php
$data = /** whatever you're serializing **/;
header('Content-Type: application/json');
echo json_encode($data);

If I’m not using a particular framework, I usually allow some request params to modify the output behavior. It can be useful, generally for quick troubleshooting, to not send a header, or sometimes print_r the data payload to eyeball it (though in most cases, it shouldn’t be necessary).

Refer: https://stackoverflow.com/questions/4064444/returning-json-from-a-php-script