Получение заголовка из тега img

#php #http #http-headers #image

#php #http #http-заголовки #изображение

Вопрос:

Есть ли какой-либо способ получить заголовки из тега <img> с помощью PHP? <img> имеет атрибут src, установленный для случайно сгенерированного PHP-изображения, которое отправляет заголовок, который я хочу получить, содержащий динамическое содержимое на основе содержимого изображения.

Комментарии:

1. Заголовок, основанный на содержимом изображения? Вы уверены? Не могли бы вы привести пример такого заголовка?

2. somevar = rand(0,2); заголовок(‘Some-Name’,somevar); заголовок(‘Content-Type’,’image/png’); some_image_code_that_uses_somevar;

Ответ №1:

HTTP-заголовки определяются веб-сервером при обслуживании изображения. Вы можете переопределить заголовки, предоставляя содержимое непосредственно из PHP. Однако это намного, намного медленнее, чем веб-сервер, обслуживающий изображение напрямую. Большинство веб-серверов допускают настройку для определения HTTP-заголовков для данного расширения файла.

ОБНОВЛЕНИЕ: добавьте код для ответа на комментарий.

HTML

 <a href="/images/my-image.php?type=png" />
  

В my-image.php:

 <?php
   if( $_REQUEST['type'] == 'png' ){
        header( 'Content-Type: image/png' );
        echo file_get_contents( '/websites/mywebsite.com/web/images/my-image.jpg' );
            exit();
   }
  

Дополнительные проверки и код доступны здесь:
http://www.php.net/manual/en/function.header.php#102175

Комментарии:

1. Я не хочу переопределять заголовок, я хочу отправить свой собственный заголовок, который зависит от того, что отображается на изображении.

2. Нет, это для другого. Мое изображение и заголовок, который я хочу отправить, отличаются при каждом выполнении скрипта, поэтому я не могу использовать http_get_headers. Мне нужно синхронизировать тег <imgamp; > с заголовком, который будет использоваться в другом месте.

3. Какими заголовками вы хотите управлять? Ответ или запрос? Я не использую http_get_headers в приведенном выше коде.

4. Я хочу получить переменную из ответа.