xml — в Delphi IdHTTP.get и PHP file_get_contents отображаются разные тексты для одного и того же URL

у меня есть это ссылка на сайт.

Я много раз успешно загружал соответствующие данные с IdHTTP.Get(link) (Delphi 2009).

Вот частичный результат, который я получаю:

<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:gd="http://schemas.google.com/g/2005" xmlns:media="http://search.yahoo.com/mrss/" xmlns:yt="http://gdata.youtube.com/schemas/2007" gd:etag="W/&quot;DEIMRn47eCp7I2A9XRdXF0o.&quot;">
<id>tag:youtube.com,2008:user:-lHJZR3Gqxm24_Vd_AJ5Yw</id>
<published>2010-04-29T10:54:00.000Z</published>
<updated>2014-10-31T17:29:47.000Z</updated>
...
</entry>

В PHP я делаю:

$content = file_get_contents(link);
echo $content;

Это точный результат, который я вижу на странице:

tag:youtube.com,2008:user:-lHJZR3Gqxm24_Vd_AJ5Yw2010-04-29T10:54:00.000Z2014-10-31T17:29:47.000ZBusinessy stuff: business dot pewdiepie at gmail dot comPewDiePiehttp_gdata.youtube.com/feeds/api/users/PewDiePie-lHJZR3Gqxm24_Vd_AJ5YwUC-lHJZR3Gqxm24_Vd_AJ5Yw117663191659499528404SE-lHJZR3Gqxm24_Vd_AJ5Ywpewdiepie

Новое в PHP. Пожалуйста, расскажите, где моя ошибка.

1

Решение

Вы получаете тот же результат в PHP, но выводите его как HTML в браузер. Браузер игнорирует все теги, которые он не знает, и выводит текстовое содержимое. Откройте исходный вид в браузере, и вы увидите теги.

Альтернативы:

Выведите результат с экранированными сущностями:

$content = file_get_contents(link);
echo htmlspecialchars($content);

Выведите результат в виде простого текста:

$content = file_get_contents(link);
header('Content-Type: text/plain');
echo $content;
4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]