Beautifying PHP’s json_encode() output

I’ve been working a bit more with PHP and JSON recently and one of the things that annoyed me quite a bit was the single line output of the json_encode() function.  Here is an example:

<?php
$data = array(
'foo' => 'bar',
'bar' => 'qux',
'blah' => 'blah',
);

echo json_encode($data);
?>

Poorly readable result (imagine having larger, more complex data structures like nested arrays):

{"foo":"bar","bar":"qux","blah":"blah"}

Apparently, since PHP 5.4.0 it became much easier to optionally format the output with some indentation.  json_encode() function has an $options parameter, which was given an extra option – JSON_PRETTY_PRINT.  Here is an updated example:

<?php
$data = array(
 'foo' => 'bar',
 'bar' => 'qux',
 'blah' => 'blah',
);

echo json_encode($data, JSON_PRETTY_PRINT);
?>

And an updated output:

{
 "foo": "bar",
 "bar": "qux",
 "blah": "blah"
}

Very handy for debugging and for those bits of JSON that should be editable by hand.

The US government has betrayed the internet. We need to take it back

The US government has betrayed the internet. We need to take it back

We can make surveillance expensive again. In particular, we need open protocols, open implementations, open systems – these will be harder for the NSA to subvert.