скачать — Как я могу доставить сгенерированное PHP изображение с определенным именем файла?

Итак, я написал «модификатор GD-изображения», который мы назовем, и, используя функцию imagejpeg, выведу его в браузер. Мне любопытно, есть ли, возможно, информация для заголовка, которую я могу передать, которая будет указывать браузеру загружать файл с именем, отличным от имени файла PHP, который возвращает данные обратно.

Сценарий состоит в том, что мой PHP-файл, «generate.php» на данный момент, передает заголовок изображения и выводит изображение, но если я пойду, чтобы сохранить изображение, имя файла по умолчанию будет «generate.php». Я хотел бы вернуть динамически сгенерированное имя файла.

Если код является обязательным здесь по какой-либо причине; Я буду рад опубликовать это — но я чувствую, что в этом нет необходимости.

0

Решение

Отправить Content-Disposition заголовок.

Для отображения изображения:

header("Content-Disposition: Inline; filename=$filename");

Скачать изображение:

header("Content-Disposition: Attachment; filename=$filename");
3

Другие решения

Я думаю, что вы можете переписать URL:

Перезапись URL с помощью PHP

Вы можете добавить простое правило, подобное этому, в файл .htaccess:


RewriteEngine on
RewriteRule ^/images/(.*)$ /generate.php?imagename=$1

Когда вы называете изображение, которое вы собираетесь использовать <img src="/images/image.png" /> но сервер вместо поиска этого URL выполнит ваш php-скрипт из-за вашего правила.

0

По вопросам рекламы [email protected]