Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите активироваться
Форумы портала PHP.SU » PHP » Программирование на PHP » Помогите активироваться

Страниц (1): [1]
 

1. LEONeso - 23 Февраля, 2011 - 00:30:10 - перейти к сообщению
Здравствуйте, мозг вообще отключился... как вывести файлы определенного формата из определенной папки.

т.е. уже заранее известно путь к папку и необходимые форматы.
(Добавление)
типа?
PHP:
скопировать код в буфер обмена
  1. <?
  2.   $dir = opendir (".");
  3.   echo "Files:\n";
  4.   while ($file = readdir ($dir))
  5.   {
  6.     echo "$file<br>";
  7.   }
  8.   closedir ($dir);
  9. ?>
  10.  

(Добавление)
ну и...
PHP:
скопировать код в буфер обмена
  1. <?
  2.   $dir = opendir (".");
  3.   echo "Files:\n";
  4.   while ($file = readdir ($dir))
  5.   {
  6.     $format=explode(".",$file);
  7.     echo "$file (формата $format[1]])<br>";
  8.   }
  9.   closedir ($dir);
  10. ?>

и на фига я делал эту тему... Хм
2. Uchkuma - 23 Февраля, 2011 - 00:57:15 - перейти к сообщению
explode - неверный подход. Надо искать последнее вхождение точки. Ну или можно воспользоваться функцией pathinfo. Помните, что у файла может быть и двойное и тройное расширение.
3. Мелкий - 23 Февраля, 2011 - 12:02:38 - перейти к сообщению
Uchkuma пишет:
Помните, что у файла может быть и двойное и тройное расширение.

а так же - что его может не быть вовсе.

LEONeso пишет:
как вывести файлы определенного формата из определенной папки.

glob
4. LEONeso - 23 Февраля, 2011 - 12:26:24 - перейти к сообщению
Uchkuma, мне в голову залез count =))

PHP:
скопировать код в буфер обмена
  1. <?
  2.   $dir = opendir (".");
  3.   echo "Files:\n";
  4.   while ($file = readdir ($dir))
  5.   {
  6.     $format=explode(".",$file);
  7.     echo "$file (формата ".$format[count($format)-1].")<br>";
  8.   }
  9.   closedir ($dir);
  10. ?>


строковая функция тут наверное не подойдет strrchr()?
5. OrmaJever - 23 Февраля, 2011 - 13:39:15 - перейти к сообщению
вот такая идея Улыбка
PHP:
скопировать код в буфер обмена
  1. $a = array('dasdsa.gif', 'dsadads', 'sadsas.jpeg', '.htaceess');
  2.  
  3. foreach($a as $v)
  4. {
  5.        if(strrpos($v, '.') !== false)
  6.         echo "Файл <b>$v</b> имеет расширение: ", substr($v,strrpos($v, '.')+1), '<br>';
  7.        else
  8.               echo "файл <b>$v</b> без расширения!<br>";
  9. }

 

Powered by ExBB FM 1.0 RC1