> 백엔드 개발 > PHP 튜토리얼 > php_php 기술에 구현된 CSS 파일 배경 이미지 다운로더 코드

php_php 기술에 구현된 CSS 파일 배경 이미지 다운로더 코드

WBOY
풀어 주다: 2016-05-16 20:32:18
원래의
866명이 탐색했습니다.

이 기사의 예에서는 PHP에서 구현된 CSS 파일 배경 이미지 다운로더 코드를 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 구현 방법은 다음과 같습니다.

CSS 파일의 배경 이미지를 다운로드하는 것은 우리 해적들이 오랫동안 해왔던 일입니다. CSS 이미지 다운로더를 다운로드할 때 다양한 광고 팝업이 자주 나타나는데, 이는 정말 참기 힘든 일입니다. 여기에서는 모든 사람에게 CSS 파일 배경 이미지 다운로더의 PHP 버전을 제공합니다.

php 프로그램 디렉토리 php.exe cssImages.php 0 http://www.xxxx.com/css/style.css 이미지의 dos 아래에 파일을 넣으세요

먼저 PHP 프로그램 디렉토리에 이미지 폴더를 생성하세요. 하하, 코드를 붙여넣으세요:

코드 복사 코드는 다음과 같습니다.
/**
*@ATANG 2013-4-6 22:19
*@헤헤
*/ 
set_time_limit(0)
error_reporting(E_ERROR)
if($argc<4){
print_r(' 
-------------------------------------
사용법: php '.$argv[0].' CSS 경로 유형(0은 원격, 1은 로컬) CSS 파일 경로 이미지 저장 디렉터리
예: 
php.exe '.$argv[0].' 0 http://www.xxx.com/index.css 이미지
-------------------------------------
');
종료(); } 
//원격 CSS
if($argv[1]==0){
$host = getParse($argv[2],'호스트')
$savePath = getSavePath($argv[3])
$images = getCssImagesArray($argv[2])
//print_r($이미지)
$imagesurls = getImagesLinks($images,$argv[2])
ImagesDowner($imagesurls)

//로컬 CSS 시작
if($argv[1]==1){
//글을 쓰기엔 너무 게으릅니다. 하하, 이건 말이 안 됩니다.

/*
* CSS 이미지 분석 기능
* $csspath CSS 파일 경로
*/ 
함수 getCssImagesArray($csspath){
$cssFile = file_get_contents($csspath)
$이미지 = 배열()
Preg_match_all("|url((. ))|i",$cssFile,$images)
$이미지 = $이미지[1]
$이미지 반환

/*
* CSS 파일 상대디렉토리 처리 기능
* $path 경로
*/ 
함수 getNocssPath($path){
글로벌 $호스트
$tempLinkmages=''
//등가 경로 얻기
$tempPath = 폭발('/',$path)
for($i=1;$i<(count($tempPath)-2);$i ){
          $tempLinkmages .= $tempPath[$i].'/';                                                }  
$xdImage = $host.$tempLinkmages
$xdImage 반환
//등가 경로 얻기

 
/*
* 이미지 연결 획득 기능
* $images 배열 얻어야 하는 모든 이미지 배열
* cssLink CSS 파일 링크
*/ 
함수 getImagesLinks($imagesArray,$cssLink){
글로벌 $호스트
$urlImages = 배열()
foreach($imagesArray as $key=>$value){
           if(pathCheck($value)){                                                                              If((!in_array(($host.$value),$urlImages))){
$urlImages[$key] = $host.$value
~ ~ If((!in_array((getNocssPath(getParse($cssLink,'path')).$value),$urlImages))){
                     $urlImages[$key] = getNocssPath(getParse($cssLink,'path')).$value;                                          ~ ~ }  
$urlImages 반환

 
/*
* 이미지 획득
* $urlImages는 다운로드해야 하는 이미지의 배열
*/ 
함수 imageDowner($urlImages){
//print_r($urlImages)
foreach($urlImages as $key=>$value){
         $urlImagesOk[$key] = str_replace('//','/',$value);                                                    $urlImagesOk[$key] = str_replace('"','',$urlImagesOk[$key]);                                                        $urlImagesOk[$key] = str_replace("'",'',$urlImagesOk[$key]);                                                      $urlImagesOk[$key] = 'http://'.$urlImagesOk[$key];                                   If(grabImage($urlImagesOk[$key],basename($urlImagesOk[$key]))){
                          print_r(                                     basename($urlImagesOk[$key]).' 파일 다운로드 성공
');
~                       print_r(                                                                 기본 이름($urlImagesOk[$key]).' 다운로드 실패
');
~ }  
//print_r($urlImagesOk)

/*
* 상대경로 절대경로 결정 기능
* $imageUrl 이미지 링크 배열
* true는 절대 경로입니다
* false는 등가 경로입니다
*/ 
함수 pathCheck($imageUrl){
If(preg_match('|^(/)|',$imageUrl)){
         true를 반환합니다.                                       }else{  
          false 반환;                                        }  

 
/*
* 이미지 다운로드 기능
* $url 이미지 링크
* $filename 사진 이름
*/ 
함수 GrabImage($url, $filename){
글로벌 $savePath
If($url == '') {
          return false; //$url이 비어 있으면 false를 반환합니다.                                                            }  
$ext_name = strrchr($url, '.'); //이미지 확장자를 가져옵니다
If($ext_name != '.gif' && $ext_name != '.jpg' && $ext_name != '.bmp' && $ext_name != '.png') {
            false를 반환합니다. //형식이 허용되는 범위를 벗어났습니다.                                                                                            }  
If($filename == '') {
           //이름이 잘못되었습니다.                                                                                                    }  
//캡처 시작
Ob_start()
If(읽기파일($url)){
              $img_data = ob_get_contents();                                               ob_end_clean();                                                   $size = strlen($img_data);                                       }else{  
Ob_end_clean()
거짓 반환
}  
If(($local_file = fopen($savePath.$filename , 'a'))&&(fwrite($local_file, $img_data)))
{                                         fclose($local_file);                                                        true를 반환합니다.                                       }  

/*
* 저장 디렉토리
*/ 
함수 getSavePath($savepath){
$savePath = $savepath
$savePath = dirname(__FILE__).$savePath
$savePath 반환

/*
* URL 분석
*/ 
함수 getParse($host,$type){
$baseurl = pars_url($host)
$baseurl[$type].'/'을 반환합니다.
 
//에코 $baseurl

?>

이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿