>  기사  >  백엔드 개발  >  PHP를 사용하여 존재하지 않는 이미지 리소스 처리

PHP를 사용하여 존재하지 않는 이미지 리소스 처리

*文
*文원래의
2017-12-26 14:19:151833검색

PHP를 사용하여 존재하지 않는 이미지 리소스를 처리하는 방법은 무엇입니까? 이 기사에서는 존재하지 않는 이미지 리소스를 필터링하기 위해 PHP를 사용하는 몇 가지 방법을 요약합니다. 매우 간단하고 실용적입니다. 그것이 모두에게 도움이 되기를 바랍니다.

방법 1:

가장 간단한 방법은 fopen()을 사용하여 파일을 열 수 있는지 확인하는 것입니다. 열 수 있으면 파일은 물론 존재합니다.


<?php
$url = &#39;http://www.jb51.net/images/test.jpg&#39;;

if( @fopen( $url, &#39;r&#39; ) ) 
{ 
 echo &#39;File Exits&#39;;
} 
else 
{
 echo &#39;File Do Not Exits&#39;;
}
?>

방법 2:


/** 
   * 筛选不存在的图片资源 
   * 
   * @author wanggeng <wanggeng123@vip.qq.com> 
   * @return vodi 
   */ 
   
  private static function _checkAll($url) 
  {  
    $curl = curl_init($url); 
    curl_setopt($curl, CURLOPT_NOBODY, true); 
    $result = false; 
    $res = curl_exec($curl); 
    if ($res !== false){ 
      $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); 
      if($statusCode == 200) { 
        $result = true; 
      } 
    } 
    curl_close($curl); 
    return $result; 
  }

먼저 실행된 URL에 대한 컬 링크를 생성합니다. 이는 사진이나 파일에 대한 링크입니다.
변수를 false로 초기화합니다.
또는 헤더 정보를 엽니다. http 요청에는 http 코드가 있습니다
이 코드를 기반으로 확인하겠습니다
반환 코드가 200이면 리소스가 존재한다는 것을 증명하고 이전 변수에 true 값을 제공합니다. 그렇지 않으면 할당되지 않습니다. a value

방법 3:

CURL 방법

CURL은 매우 유용한 클래스 라이브러리입니다. 이를 사용하여 판단하는 방법을 살펴보겠습니다.

<?php
$url2 = &#39;http://www.jb51.net/test.jpg&#39;;

$ch = curl_init();
$timeout = 10;
curl_setopt ($ch, CURLOPT_URL, $url2);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

$contents = curl_exec($ch);
//echo $contents;
if (preg_match("/404/", $contents)){
 echo &#39;文件不存在&#39;;
}
?>

curl_exec()가 실행된 후 파일이 없으면 다음 정보가 반환됩니다.

HTTP/1.1 404 Not Found
Date: Tue, 14 Feb 2012 05:08:34 GMT
Server: Apache
Accept-Ranges: bytes
Content-Length: 354
Content-Type: text/html

정규식을 사용하여 404가 있는지 확인하세요. 그렇다면 파일이 존재하지 않습니다.

관련 권장사항:

php 로컬로 사진 원격 다운로드

PHP 원격 파일 관리, 테이블 정렬, 디렉토리 탐색, 시간별 정렬 가능_PHP 튜토리얼

[php 컬 클래스 라이브러리] 10개의 PHP 컬 클래스 라이브러리 다운로드

🎜🎜

위 내용은 PHP를 사용하여 존재하지 않는 이미지 리소스 처리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.