Я пытался вывести XML с помощью PHP, но обнаружил странную (!) Ошибку в Internet Explorer.
Ожидаемый вывод XML: (упрощенно)
<root>
<match_id>12</match_id>
<stadium_id>43</stadium_id>
<tribune_id>2</tribune_id>
<fan_id>453</fan_id>
</root>
Я создаю этот вывод со следующим кодом PHP:
echo "<?xml version='1.0' encoding='utf-8' ?>
<root>
<match_id>"; echo $match->getId(); echo "</match_id>
<stadium_id>43</stadium_id>
<tribune_id>2</tribune_id>
<fan_id>".$_SESSION['user_id']."</fan_id>
</root>";
В Firefox выводтакой же, как и ожидалось.Однако в IE вывод выглядит так:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<match_id>0</match_id>
<stadium_id>43</stadium_id>
<tribune_id>2</tribune_id>
<fan_id />
</root>
Это действительно досадная ошибка.Я установил заголовок PHP для вывода XML и изменил много других вещей, но не смог заставить его работать.
Часть $match->getId()
просто возвращает целое число, но IE всегда показывает это значение как 0. Если яустановите <fan_id>
и <match_id>
вручную, IE покажет значения правильно.
Кстати, я использую этот вывод XML во Flash (AS3), и это также показывает тот же результат с IE.
Что я делаю не так?