Нет, другого пути нет, поскольку заголовок content-type
занимает всю страницу; Вы не можете иметь разные типы контента для одной страницы. Но вам не нужно иметь один PHP-файл для каждого из ваших изображений, вы можете сделать это так:
<img src="image_generator.php" />
И в image_generator.php вы объявляете заголовок изображения и выводите изображение, и, возможно, генерируете его в соответствии со строкой запроса. Например, вы можете добавить идентификатор изображения к URL:
<img src="image_generator.php?id=100" />
Затем в image_generator.php просто выберите данные изображения в соответствии с $_GET['id']
и сгенерируйте их.