Скажем, у меня есть два веб-сайта. Веб-приложение Java, работающее на www.server100.com, и веб-приложение PHP, работающее на www.server200.com.
Скажем, у меня есть сервлет http://www.server100.com/webapp1/getImageServlet
который возвращает следующий HTML-контент, где имя файла в html (ABC123.jpg
) является другим именем файла для каждого часа дня:
<div id="dynamicImage">
<img src="http://www.server100.com/ABC123.jpg">
</div>
Теперь скажем, у меня есть PHP файл здесь: http://www.server200.com/test1.php
. Как включить HTML-код, полученный из сервлета в моем PHP файле?
Я думаю, что хочу сделать что-то вроде...
<?php
Print "<html><body>";
Print "Hi! Let see this hour image!";
include "http://www.server100.com/webapp1/getImageServlet";
Print "</body></html>";
?>
Любые идеи приветствуются! И упростит ли это, если приложение Java и приложение PHP будут работать на одном сервере? Благодарю!
Думаю, я понял это...
Print file_get_contents("http://www.server100.com/webapp1/getImageServlet");
... кажется, делает то, что мне нужно.
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Title</title>
</head>
<body>
<?php
//your PHP goes here
file_get_contents("http://www.server100.com/webapp1/getImageServlet");
?>
</body>
</html>
сохраните это как whatever.php
если ваш сервлет выводит HTML, просто сделайте это
<?php
$handle = fopen("http://www.server100.com/webapp1/getImageServlet", "r");
$contents = '';
while (!feof($handle)) {
$contents .= fread($handle, 8192);
}
fclose($handle);
echo $contents; //printing it all out
?>
также echoing file_get_contents() должен работать просто отлично
file_get_contents
я разместил в своем ответе ниже. Это делает то же самое, что вы fopen
? Или есть проблемы с моим? Спасибо!
print()
из Perl, вы можете взглянуть на echo