в том числе XML на странице, которая вызывает сбой PHP - PullRequest
0 голосов
/ 28 ноября 2010

На это можно было бы ответить где-нибудь еще, если так извините. У меня есть динамический XML-документ на удаленном сервере, который имеет строку <?xml version="1.0" encoding="UTF-8"?> в первой строке. Это заставляет PHP генерировать исключение, которое я предполагаю из-за?>

У меня вопрос: как включить этот документ на мою страницу, чтобы PHP не выдавал исключение?

Приветствия

РЕДАКТИРОВАТЬ: я в том числе с помощью require, возможно, не правильный способ сделать это?

Ответы [ 2 ]

4 голосов
/ 28 ноября 2010

require и include являются неподходящими инструментами для этого.Да, и те, и другие включают страницу, но затем пытаются запустить ее как код PHP на вашем компьютере без каких-либо мер безопасности.Представьте себе, что произойдет, если удаленный компьютер вернет <?php system('poweroff') ?> - PHP на вашем компьютере с радостью попытается отключить ваш сервер.

Функция, которую вы ищете: readfile () -извлекает удаленный файл и выводит его - не пытаясь запустить его как PHP.

3 голосов
/ 28 ноября 2010

Это похоже на проблему с параметром конфигурации short_open_tag, который будет интерпретировать <? как открывающий тег PHP. Вы можете попробовать использовать функцию ini_set () для установки short_open_tag на false непосредственно перед включением удаленного файла, а затем переключить его обратно.

РЕДАКТИРОВАТЬ: Если файл / URL, на который вы ссылаетесь, не содержит PHP-кода, который нужно запустить, вы можете использовать функцию readfile () , чтобы читать и выводить его содержимое одним мах. Это сломается, если файл, загруженный с сервера, содержит фрагменты PHP, но должен работать, если данные полностью готовы к отправке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...