디렉토리를 검색하고 모든 jpg
파일을 나열하는이 정렬 기능이 있는데, 파일 이름이 지정된 키워드와 일치하는 파일 만 jpg
으로 정렬하려면 어떻게해야합니까? 예를 들어 "toys"
이라는 이름을 가진 모든 jpg
파일을 찾고 정렬 할 수 있습니다.키워드 배열로 파일 정렬 방법 파일 이름
$a_img[] = array(); // return values
$keyword = "toys"; // your keyword
$allowed_types = array('jpg'); // list of filetypes you want to show
$dimg = opendir($imgdir);
while($imgfile = readdir($dimg)) {
// check to see if filename contains keyword
if(false!==strpos($keyword, $imgfile)){
//check file extension
$extension = strtolower(substr($imgfile, strrpos($imgfile, ".")+1));
if (in_array($extension, $allowed_types)) {
// add file to your array
$a_img[] = $imgfile;
}
}
}
// sort alphabetically by filename
sort($a_img);
$totimg = count($a_img); // total image number
for($x=0; $x < $totimg; $x++)
{
$size = getimagesize($imgdir.'/'.$a_img[$x]);
// do whatever
echo $a_img[$x];
}
당신은
strpos()
사용하여 키워드의 발생에 대한 파일 이름을 확인하고 싶은 것
도움을 주셔서 감사합니다. 불행히도 배열과 관련하여 완전히 혼란 스럽습니다. 하지만 내 코드를 추가하여 오류가 발생하지 않았지만 결과가 반환되지 않았습니다. 각 키워드에 대해 13 개의 이미지가 있으므로 이미지 세트는 toys.jpg, toysa.jpg, toysb.jpg, toysc.jpg 및 cars.jpg, carsa.jpg, carsb.jpg라는 이미지 세트로 이름이 지정됩니다. 등등 ... 그래서 나는 키워드 장난감 그들과 함께 모든 JPG 파일을 반환 finda해야합니다. –
코드가 깨지는 부분을보기 위해 일부 'echo'줄을 추가하려 했습니까? – doublesharp
@KarenBemusOsh - 나쁘다.'if (false! == strpos ($ imgfile, $ keyword))'에 대한 매개 변수가 거꾸로 있으면'strpos ($ haystack, $ needle)'이어야합니다. 내 편집 내용을 확인하십시오. – doublesharp