Как сохранить отступ при использовании file_get_content с php? - PullRequest
1 голос
/ 30 января 2012

Я использую функцию 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 Ответ

3 голосов
/ 30 января 2012

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

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

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

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

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

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

...