array_diff($arr1,$arr2)
배열의 차이 집합을 계산하는 데 사용되는 PHP 배열 함수 중 하나입니다.
정기적으로 일치하는 html 이미지 태그
sinaeditor로 이미지 삭제 작업 추가
그 활용법 중 하나가 오늘 밤 시나 에디터를 활용해 기사를 게재하는 중입니다.
이 기능을 사용합니다
문제 설명:
기사에 여러 장의 사진이 있습니다. 기사를 추가하는 동안 웹사이트의 사진 디렉토리에 자동으로 업로드됩니다.
기사를 수정하는 과정에서 사진에 관련 삭제 작업을 수행하면 코드에 있지만(이미 데이터베이스에 저장되어 있음)
데이터 태그는 와 유사하지만
에는 여전히 이미지 파일이 있습니다.
웹사이트에서는 특정 처리가 필요합니다.
대처 방법:
먼저: 데이터베이스에서 원본 기사 콘텐츠를 가져옵니다
이미지 파일 이름을 가져옵니다
사용된 정규식
방법은 다음과 같습니다
먼저 http의 네 글자를 일치시킨 다음 숫자가 아닌 여러 문자를
과 일치시킵니다.
하나 적음, 하나의 일치하는 점(.), 일치는 jpg 또는 gif 또는 png로 끝나고 $congtent에서 검색됩니다. 결과는 $temp에 저장됩니다.
원본 데이터의 이미지를 데이터베이스에 배열로 저장합니다. 이름을 $oldimgs
로 지정합니다.
저장하고 나면 2차원 배열을 출력하는 부분이 좀 번거로운 것 같아요
참고: 내 사진 이름은 "201111291322589013.jpg"
2단계:
사용자가 제출한 콘텐츠에서 모든 이미지를 찾는 방법은 위와 같습니다. 두 번째 배열을 얻어 $newimgs
라는 이름을 갖게 됩니다.
arr1과 arr2의 차이 집합을 구하는 방법은 다음과 같습니다
--즉, 사용자가 새로 제출한 콘텐츠에 원본 데이터의 사진이 없으면 해당 사진이 삭제됩니다.
사진을 삭제하는 방법은 매우 간단합니다.
이로써 제 목적은 달성되었습니다. 사용자가 사진이 포함된 글을 편집하면 해당 사진도 웹사이트에서 삭제됩니다
기사 속 사진의 이름을 알아내는 방법은 기사를 삭제하는 과정에도 적용될 수 있습니다.
사진을 삭제하는 방법으로는 realpath(__FILE__)를 사용하고 $dir에 다양한 "./""../"를 추가하여 웹사이트의 디렉토리에 상대적인 사진 디렉토리를 제공할 수 있습니다
여기의 일반 규칙은 HTML로 경로를 얻는 데 별로 좋지 않습니다. 최근에 일반 책을 찾았습니다.