Я имею эту функцию, чтобы получить предметы из каталога:PHP - удалить элементы, которые не являются изображениями из массива
if ($dh = opendir($dir)) {
$images = array();
while (($file = readdir($dh)) !== false) {
if (!is_dir($dir.$file)) {
$images[] = $file;
}
}
closedir($dh);
}
return $images;
Функция работает, и я получаю этот результат (это каталог теста):
array (size=9)
0 => string 'odluka o matinim podrujima.shs' (length=31)
1 => string 'Odluka o optinskoj upravi.doc' (length=29)
2 => string 'o_pirotu3.jpg' (length=13)
3 => string 'o_pirotu4.jpg' (length=13)
4 => string 'Panorama 10.jpg' (length=15)
5 => string 'Panorama 8n.jpg' (length=15)
6 => string 'Panorama n.jpg' (length=14)
7 => string 'PRAVILNIK O ORGANIZACIJI I SISTEMATIZACIJI POSLOVA.doc' (length=54)
8 => string 'Pravilnik_o_reprezentaciji.doc' (length=30)
Как удалить все элементы без изображений, и есть ли способ выбрать тип mime, который останется в возвращенном массиве (мне нужны jpg, png и bmp)?
Это работает как шарм :). Один быстрый вопрос (мои знания о регулярном выражении очень ограничены) - это выражение охватывает малые и заглавные буквы (PNG и png одинаковы)? – Sasha
Добавьте 'i' сразу после последнего'/'в regex preg_match, это позволит случай не иметь значения. –
Спасибо, много мат :). Ты помог мне больше, чем знаешь :). – Sasha