Avatar ·

PHP: Como formatar JSON de forma bonita (Pretty-Print) para exibir na tela e salvar em arquivo?

Olá a todos! Sou iniciante em PHP e estou trabalhando em um pequeno projeto onde preciso exibir dados em formato JSON na tela e salvá-los em um arquivo de log. Atualmente estou usando a função json_encode(), mas ela retorna tudo em uma única linha — é muito difícil de ler, especialmente quando os dados são complexos e aninhados.\n\nAqui está meu código atual:\n\n```php\n [\n 'name' => 'Ivan',\n 'email' => 'ivan@example.com',\n 'age' => 30,\n 'hobbies' => ['pesca', 'programação', 'leitura']\n ],\n 'status' => 'active',\n 'last_login' => '2023-10-15 14:30:00'\n];\n\n$json = json_encode($data);\necho $json;\n\n// Salvando em arquivo\nfile_put_contents('log.json', $json);\n?>\n```\n\nNa saída fica uma bagunça tipo: `{"user":{"name":"Ivan","email":"ivan@example.com","age":30`