Ну, переведенный код (без проверки ошибок, просто грязная простая функциональность):
$url = 'http://server/pagerequest.jsp';
$text = file_get_contents($url);
header('Content-Type: text/xml');
echo $text;
Обратите внимание, что $url
должен быть полностью квалифицирован ...
РЕДАКТИРОВАТЬ : для более надежного решения:
function getUrl($url) {
if (ini_get('allow_url_fopen')) {
return file_get_contents($url);
} elseif (function_exists('curl_init')) {
$c = curl_init($url);
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
return curl_exec($c);
} else {
$parts = parse_url($url);
if (!isset($parts['host'])) {
throw new Exception('You need a host!');
}
$port = isset($parts['port']) ? $parts['port'] : 80;
$f = fsockopen($parts['host'], $port, $errno, $errstr, 30);
if (!$f) {
throw new Exception('Error: ['.$errno.'] '.$errstr);
}
$out = "GET $url HTTP/1.1\r\n";
$out .= "Host: {$parts['host']}\r\n";
$out .= "Connection: close\r\n\r\n";
fwrite($f, $out);
$data = '';
while (!feof($f)) {
$data .= fgets($f, 128);
}
list($headers, $data) = explode("\r\n\r\n", $data, 2);
// Do some validation on the headers to check for redirect/error
return $data;
}
}
Использование:
$url = 'http://server/pagerequest.jsp';
$text = getUrl($url);
header('Content-Type: text/xml');
echo $text;