как проверить, является ли путь к файлу изображением или нет в php?


У меня есть таблица, в которой хранятся пути к файлам изображений.документов, pdf и т. Д... Мой запрос

Select File_Paths from Uploads

Теперь как мне проверить, является ли путь к файлу изображением или нет, используя PHP... Если это изображение, я должен его просмотреть или загрузить.......

Author: Jacob Relkin, 2010-01-22

4 answers

Используйте функции информация о файле .

 2
Author: Ignacio Vazquez-Abrams, 2010-01-22 13:21:06

Старый добрый getimagesize() - разумный способ узнать, содержит ли файл допустимое изображение. Вам просто нужно проверить его возвращаемое значение на FALSE:

<?php

$is_picture = getimagesize($filename)!==FALSE;

?>

Конечно, неплохо сделать это только один раз и сохранить результат в базе данных.

Если это не то, что вы ищете, пожалуйста, уточните.

 3
Author: Álvaro González, 2010-01-22 13:34:04

Вам нужно проверить их расширения следующим образом:

if (strpos($File_Paths, 'jpg') !== false || strpos($File_Paths, 'gif') !== false)
{
  // yes there is an image.
}
 0
Author: Sarfraz, 2010-01-22 13:22:44

Вы можете отслеживать расширения путей из запроса. Например (с использованием MySQL):

$result = mysql_query('Select File_Paths from Uploads');
$extArray = array('gif', 'jpg', 'jpeg', 'png');
while ($row=mysql_fetch_row($result)) {
  $extension = substr($row[0], strrpos($row[0], ".")+1);
  if (in_array($extension, $extArray)) {
    // Do something with image
  }
  else {
    // Download other files
  }
}
 0
Author: Alex, 2010-01-22 13:27:31