2010-01-22 2 views
2

나는 파일 images.documents, PDF 등의 경로 ... 내 쿼리 내가 파일 경로는 이미지 또는 PHP를 사용하지 여부를 확인 어떻게 지금파일 경로를 확인하는 방법은 이미지입니까, 아니면 PHP가 아닙니까?

Select File_Paths from Uploads 

입니다 ... 그것은 만약를 저장하는 테이블이 그것을 보거나 다른 이미지를 다운로드해야하는 이미지입니다 .......

+4

관련 질문 및 답변은 ​​파일의 MimeType을 확인하는 방법을 참조하십시오. http://stackoverflow.com/questions/2006632/php-how-can-i-check-if-a-file-is -mp3-or-image-file – Gordon

답변

2

file info 기능을 사용하십시오.

+0

@Ignacio 어떤 샘플 – udaya

+0

그 링크의 예제 이외의 다른 것? –

+0

은 file_info 함수로 이미지 유형을 결정할 때 일반적으로 선택합니까? MIME 형식이 지원되지 않습니다. – rrrfusco

0

는이 같은 자신의 확장명을 확인해야합니다 : 당신은 쿼리의 경로의 확장을 chack 수

if (strpos($File_Paths, 'jpg') !== false || strpos($File_Paths, 'gif') !== false) 
{ 
    // yes there is an image. 
} 
0

. (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 
    } 
} 
3

그리운 getimagesize()는 파일이 유효한 이미지가 포함되어 있는지 여부를 확인 할 수있는 합리적인 방법입니다. 당신은 FALSE에 대한 반환 값을 테스트해야합니다

물론
<?php 

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

?> 

, 그것은 한 번만를하고 데이터베이스에 결과를 저장하는 것이 좋습니다.

이것이 원하는 것이 아니라면 분명히하십시오.

+0

getimagesize()가 파일을 읽을 수 없다면 예외를 던질 것이라는 점에 주목하면'$ is_picture = is_file ($ filename) && is_readable ($ filename) && getimagesize ($ filename)' – Merijn

관련 문제