2014-05-22 2 views
-1

이 코드가? 그리고 .png, .bmp 등으로도 작동하게 만드시겠습니까?삭제 파일 확장자와 관계없이

PHP: Delete a file with any extension?은 내가 찾고있는 것이 아닙니다. 감사합니다.

+2

링크 해제()를 실제 파일 이름을 필요로 잡을 수있어. 와일드 카드/globbing 지원이 없습니다. 먼저 와일드 카드 파일 이름을'glob()'하고 결과 배열을 반복하고 매치 된 파일을 개별적으로 링크 해제해야한다. –

+0

당신은 실제로'를 가지고 있습니다. ''. 코드에서? –

+0

DOS 명령 :'delete *. *'--- "Are you sure * Y/N *"-를 입력하십시오. 심지어 델 (델)도 일하는 데 익숙했다. 그래서'*. *'는 ['glob()'] (http://www.php.net/manual/en/function.glob.php)와 함께 적용되어야합니다. * 노스탤지어를 좋아해야합니다. * –

답변

0

당신은 변수의 값에 대한

$files = glob($sMediaDir . $iLastID .'.*'); // Look for all files starting with $iLastId 
if(count($files)!==0){ 
    // If files are found, loop through the array to delete them: 
    foreach($files as $k=>$file){ 
     unlink($sMediaDir.$file); 
    } 
} 

임 완전히 확실하지 않은 그들에게 삭제 파일을 찾을 glob()를 사용할 수 있지만, 당신은 내 드리프트 :

+0

if 카운트는 전혀 쓸모가 없다. –

+0

전혀 그렇지 않다. 당신은 빈 배열에 foreach를 시도한다;)'count()'가 빠르다는 것 외에도, 더 느린 foreach가 필요없는 항목이 없다면 – Martijn

+0

고맙다. 나는 예를 들어 @unlink ($ sMediaDir. $ iLastID. ''. '. *')와 같은 더 간단한 해결책이 있기를 바랐다. – user3650459

관련 문제