특정 데이터베이스 테이블에 폴더가없는 경우에만 폴더의 파일 (그림 파일)을 삭제하려고합니다.mySQL 테이블에없는 파일 삭제
파일 이름을 검사하는 것처럼 보이지만 테이블에 있으면 확인해도 좋지만 삭제하지는 마십시오.
아이디어가 있습니까?
특정 데이터베이스 테이블에 폴더가없는 경우에만 폴더의 파일 (그림 파일)을 삭제하려고합니다.mySQL 테이블에없는 파일 삭제
파일 이름을 검사하는 것처럼 보이지만 테이블에 있으면 확인해도 좋지만 삭제하지는 마십시오.
아이디어가 있습니까?
데이터베이스에서 삭제하면 안되는 모든 사진을 선택하고 모든 파일을 검토하면됩니다.
$result = mysql_query("SELECT filename FROM no_delete");
while($row = mysql_fetch_assoc($result)) {
$do_not_delete[] = $row['filename'];
}
foreach(glob("*") as $filename) {
if (!in_array($filename, $do_not_delete)) {
//delete them
}
}
내가 (당신이 PHP를 사용하고 있기 때문에) 다음 하나 하나가 있는지 확인하기 위해 데이터베이스를 쿼리 배열 디렉토리에있는 모든 파일의 목록을 소요 스크립트를 저장 쓰는 방법으로 접근 할
그들은 테이블에 존재합니다.
그렇다면 삭제하지 않으면 아무 작업도 수행하지 않습니다.
로그 파일에서 기록 전용으로 삭제 한 이름을 캡처하는 것도 도움이됩니다.
curl을 사용하여 명령 줄에서 실행하고 심지어 chron 작업 (Linux의 경우) 또는 예약 된 작업 (Windows의 경우)으로 설정하여 자동으로 실행되도록 설정할 수도 있습니다.
scandir() http://php.net/manual/en/function.scandir.php을 사용하여 폴더의 내용을 가져오고 모든 배열 값에 대해 파일 이름이 테이블에 있는지 확인하십시오. 그렇지 않다면 파일을 삭제하십시오 unlink() http://www.php.net/manual/en/function.unlink.php
테이블에 무엇이 있습니까? 그림의 전체 경로? –
데이터베이스에 무엇이 있습니까? 파일 이름뿐만 아니라 파일 내용? –