У меня есть следующие сценарии PHP, которые выводятся / отображаются в виде изображений PNG / PHP:
-image.php
-background.php
Я хотел бы иметь возможность открыть третий скрипт «main.php», и он показывает image.php, наложенный на background.php
Я пытался использовать общий метод:
<?php
$url1="image.php"$url2="background.php";
$dest = imagecreatefrompng($url1);
$src = imagecreatefromjpeg($url2);imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100);
header('Content-Type: image/png');
imagepng($dest);
imagedestroy($dest);
imagedestroy($src);
?>
Но это не сработало (предположительно, потому что образы курсов — php).
Любые идеи о том, как объединить эти два изображения? заранее спасибо
Вам нужно объяснить php, что он должен выполнять image.php вместо того, чтобы включать его в «сырой» форме.
Самый простой способ сделать это — использовать что-то вроде curl_init или file_get_contents и добавить полный URL-адрес в скрипт php, чтобы вы открыли файл через http и попросили веб-сервер выполнить его для вас.
Поэтому измените ваш код на что-то вроде этого:
<?php
$url1= file_get_contents("http://example.com/image.php");
$url2= file_get_contents("http://example.com/background.php");
$dest = imagecreatefrompng($url1);
$src = imagecreatefromjpeg($url2);imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100);
header('Content-Type: image/png');
imagepng($dest);
imagedestroy($dest);
imagedestroy($src);
?>
НТН,
bovako
Вы должны попробовать использовать include
читать содержимое файла, а затем imagecreatefromstring
создать изображение:
<?php
$handle = imagecreatefromstring(include('image.php'));
Спасибо, похоже, сейчас работает. Мне пришлось изменить функции imagecreate с png / JPEG на string (как показано ниже):
Еще раз спасибо! Спас мой разум от сумасшествия
$url1= file_get_contents("http://example.com/image.php");
$url2= file_get_contents("http://example.com/background.php");
$dest = imagecreatefromstring($url1);
$src = imagecreatefromstring($url2);imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100);
header('Content-Type: image/png');
imagepng($dest);
imagedestroy($dest);
imagedestroy($src);
?>