/data/editor 에서 이름이 같은 파일을 찾아 확장자 통일 시키기
본문
에디터에 들어간 PNG 파일이 있는데요
data 에 있는 파일들을 다 내려받아서 파일 압축?을 시키고 다시 업로드를 하고 보니
파일명이 동일한 PNG(원본) 과 png(압축된 이미지) 이렇게 중복된 파일이 생겼습니다;;
ex) aaa.png aaa.PNG
이걸 php or sql 로
파일명이 동일한 파일들만 골라내서
png 인 파일의 확장자를 PNG 로 바꿔서 원본에 덮어씌울 수 있는 방법이 있을까요??
구글링 해보니 특정 확장자 파일 모두 제거, 업로스시 확장자 변경 이런 방법들은 있는데
기존에 서버에 있는 파일들을 찾아내서 확장자를 변환해주는 건 안보이더라구요;;
개발자가 아니어서 검색하기 쉬운 용어들을 몰라서 그럴 수도 있겠지만...
이걸 파일질라에서 파일명 동일한 애들 찾아서 하나하나 수정해주는 방법 뿐인건지....ㅠㅠ
답변 4
단순 파일명 변경하실거면..
그냥 간단하게 예를들어보면
$dir = opendir('./img');
while ($file = readdir($dir)) {
$ext = '';
$result = false;
$file_name = substr($file, 0, -4);
$ext = substr($file, -4);
if ($ext = '.png') {
rename('./img/'.$file_name.$ext,'./img/'.$file_name.'.PNG');
echo './img/'.$file_name.$ext.' -> ./img/'.$file_name.'.PNG';
}
}
이런식으로 할수있을거같긴한데,
아마 경로나 이런거 맞추고 좀 맞춰서 하시면 될거같긴해요 ㅎ
!-->어떤 문제가 생겨서 이렇게 하시려는 것인지 모르겠습니다.
서버(리눅스)에서는 대소문자가 다르면 다른 파일입니다.
게시판 내용(에디터로 이미지가 들어 있는)에 포함된 이미지가 png면 서버에 png가 있어야
하고 PNG면 PNG가 있어야 합니다.
이게 바뀌면
게시판 내용을 볼 때 이미지가 나오지 않습니다.
서버에 a.png가 있었는데
어떤 이유로 다운로드 받아서 업로드 할 때 a.PNG업로드 하는 바람에
서버에는 a.png, a.PNG가 중복?으로 있게 되고
게시판 에디터에서 사용하는 것은 a.png에서 a.PNG로 변경해 주어야 하는 거군요.
==
이게 맞다면
업로드한 파일(a.PNG)를 a.png로 이름만 바꾸면 되는 거군요.
php로 작업하면
작업하 디텍로리 리스트-loop {
디렉토리를 읽고 loop를 돌면서 {
if( 파일 확장자가 PNG면 , 확장자 png가 존재하는지 ) 이름 변경
}
}
이런 식이 되겠네요.
와... 해결했습니다... 코드는 진짜 다 뜯어고치고 싶을 정도로 지저분한데;; 뭐 개발자도 아닌데 구현했다는거에 만족합니다...;;