Получить тип файла в BLOB Oracle

0

Я сохранил изображение в столбце BLOB Oracle. Когда я пытаюсь прочитать его, я обнаружил, что какой-то первый символ в строке BLOB - это мой тип изображения (например, PNG, но окруженный многими зашифрованными (или двоичными) символами). Это означает, что я также сохранил свой тип изображения. Итак, как обнаружить это с помощью PHP-кода?

Это моя первая строка BLOB выглядит так:

'�PNG
  • 0
    «Это означает, что я также сохранил свой тип изображения» - хм, нет. Это часть данных изображения.
Теги:
image
types
blob

1 ответ

1
Лучший ответ

Как писал zerkms, это часть заголовка файла. Он предоставляет метаданные о файле, чтобы программы знали, как с ним работать.

Чтобы получить информацию о сохраненном изображении, вы можете использовать getimagesizefromstring().

Это возвращает массив информации об изображении. Например, мое изображение мини-аватара здесь, на SO (как показано внизу этого ответа), при сохранении в виде текстового файла и доступ к нему:

print_r(getimagesizefromstring(file_get_contents('./image.txt')));

возвращает это:

Array
(
    [0] => 32
    [1] => 32
    [2] => 3
    [3] => width="32" height="32"
    [bits] => 8
    [mime] => image/png
)

Как вы можете видеть, тип изображения доступен с помощью клавиши [mime].

Обратите внимание, что для этой функции вам понадобится PHP> = 5.4 (что не должно быть проблемой, поскольку <5.4 больше не поддерживается).

  • 0
    Спасибо @timclutton, это работает как шарм

Ещё вопросы

Сообщество Overcoder
Наверх
Меню