我有一张表存储了图片、文档、PDF等文件的路径。我的问题是:
Select File_Paths from Uploads
现在我该如何使用PHP检查文件路径是否为图像...如果是图像,我就需要查看它,否则就要下载它......
好老的getimagesize()是一种合理的方法,用于确定文件是否包含有效图像。您只需要将其返回值与FALSE
进行测试:
<?php
$is_picture = getimagesize($filename)!==FALSE;
?>
当然,最好只执行一次并将结果存储到数据库中。
如果这不是你要找的,请澄清一下。
$is_picture = is_file($filename) && is_readable($filename) && getimagesize($filename)
。 - mrbellekmime_content_type()
已被弃用,其他函数未受影响。 - Ignacio Vazquez-Abrams你需要像这样检查他们的扩展名:
if (strpos($File_Paths, 'jpg') !== false || strpos($File_Paths, 'gif') !== false)
{
// yes there is an image.
}
您可以从查询中检查路径的扩展名。例如(使用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
}
}