Как я могу сохранить отступ при использовании file_get_content с php?

Я использую file_get_contents функция в php, чтобы получить содержимое сайта. Проблема в том, что на сайте, с которого я беру информацию, информация аккуратно смещается, но когда я получаю информацию, она теряет все отступы.

Код, который я использую:

<?php
$url = "https://graph.facebook.com/btaylor";
$file = file_get_contents($url);
echo "$file";
?>

Если вы перейдете на исходный сайт здесь, вы можете увидеть, как информация настроена как:

{
   "id": "220439",
   "name": "Bret Taylor",
   "first_name": "Bret",
   "last_name": "Taylor",
   "link": "https://www.facebook.com/btaylor",
   "username": "btaylor",
   "gender": "male",
   "locale": "en_US"
}

пока на моем сайте, после получения информации это выглядит так:

{"id":"220439","name":"Bret Taylor","first_name":"Bret","last_name":"Taylor","link":"http:\/\/www.facebook.com\/btaylor","username":"btaylor","gender":"male","locale":"en_US"}

Как я могу сохранить отступ?

Заранее спасибо!

Кстати, ссылка и информация с образца страницы из Facebook, а не реальной информации.

1 ответ

Решение

Это не имеет ничего общего с file_get_contents, Это зависит исключительно от Content-Type вашей страницы. Оригинал представляет собой простой текст, а ваш сайт выводит HTML.

Вы можете использовать:

 header("Content-Type: text/plain");

Или сохраните тип HTML, но оберните ваш вывод в pre теги:

 echo "<pre>$file</pre>";

Поскольку вы, возможно, захотите повторно использовать этот зеркальный вывод JSON, я бы выбрал первый вариант. (Но тогда application/json Тип может быть более подходящим. Не уверен, почему вы хотите представить его с фиксированным форматированием в любом случае.)

Другие вопросы по тегам