2013-10-24 3 views
-1

Я новичок в php. Мне нужно извлечь из папки все изображения. Доступен jpg. я пытался сделать что-то вроде этого, но это не работаетИзвлеките только определенные типы файлов из папки

$type = 'jpg'; 

    $pics = opendir('admin/upload/server/php/files/thumbnail/'); 
     $result = glob($pics.'*.'.$type); 
      while ($filename = readdir($result)){ 
      if ($filename != '.' && $filename != '..') { 

       $path = 'admin/upload/server/php/files/thumbnail/'.$filename; 
       $image = 'admin/upload/server/php/files/'.$filename; 
      list($width, $height) = getimagesize($path); 
       $path = 'http://localhost/site/'.$path; 
       $image = 'http://localhost/site/'.$image; 

Может кто-то помочь мне исправить это? Благодаря

+2

Какие ошибки вы получаете и определяете, что «не работает». ['var_dump()'] (http://php.net/manual/en/function.var-dump.php) является вашим другом, а также вашим источником HTML. –

+0

Чувак, вы просто смешиваете разные подходы. Вам не нужны opendir(), readdir(), и если, и т. Д. С glob()! Просто foreach() над результатом $. – AbraCadaver

ответ

0

Попробуйте с функцией glob(): http://php.net/manual/en/function.glob.php

foreach (glob("admin/upload/server/php/files/thumbnail/*.jpg") as $filename) { 
    $path = 'admin/upload/server/php/files/thumbnail/'. basename($filename); 
    $image = 'admin/upload/server/php/files/'. basename($filename); 
    // ... 
} 
+0

Это работает, но проблема в том, что $ filename содержит путь к файлам папок/thumbnail. Как мне получить: $ path = 'files/thumbnail'; $ image = 'files /'; – Ogum

+0

Я разместил решение. Зачем принимать то, что не работает? Необходимо использовать basename() – AbraCadaver

+0

Да, спасибо, я использовал и решил с basename() – Ogum

1

Я не знаю, что в $ фотографии, поэтому я использовал базовое имя. Кроме того, вы переопределяете $ path и $ image:

$type = 'jpg'; 
$result = array_map('basename', glob($pics.'*.'.$type)); 

foreach($result as $filename) { 
    echo $filename; 
    //etc... 
} 
Смежные вопросы