Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как можно исключить определенную группу файлов 
:(
    Опции темы
Alek74
Дата 15.4.2006, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 113
Регистрация: 23.3.2006

Репутация: нет
Всего: нет



Как можно исключить определенную группу файлов? К примеру *.txt при подсчете файлов.
--------------------
---------------------------------- «Филисофия жизни ©»  ---------------------------------- 
PM MAIL   Вверх
krulik
Дата 15.4.2006, 10:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 132
Регистрация: 14.1.2006
Где: Украина, Житомир

Репутация: 2
Всего: 4



Глупо но можно так.
Например через glob() считать все файлы из директории.
Ну а потом подсчитать сколько там файлов определенного расширения. Искать нужные файлы через регулярные выражения.

Вот реализация того что я сказал выше:
Код

<?php
$i=0;
$filesList=glob('D:\Личные\krulik\www\*.*'); //считываем все полный путь каждого файла из указанной дериктории
    foreach ($filesList as $filePath)
    {
        preg_match('/(\w+)\.(\w+)/',$filePath,$fileName); //регуляркой режим а куски имя файла
        {
            if ($fileName[2]!='php') $i++; // если расширение не равно РНР приращиваем счетчик        
        }    
    }
    print $i;
?>    


Это сообщение отредактировал(а) krulik - 15.4.2006, 11:06
--------------------
Каждый день несет в себе частицу вечности (Паоло Коэльо)Если вам плюют в спину, значит вы в переди! (Конфуций)Все, что имеет форму, может исчезнуть в одно мгновение (Харуки Мураками)
PM MAIL ICQ   Вверх
Alek74
Дата 15.4.2006, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 113
Регистрация: 23.3.2006

Репутация: нет
Всего: нет



Вот нашел на форуме функцию.
Код

<?php
function dirsize( $d )
{
  $dh = opendir( $d );
  while( ( $f = readdir( $dh ) ) !== false )
   {
    if ( $f != "." && $f != ".." )
     {
      $path = $d . "/" . $f;
      if( is_dir( $path ) )
       {  $count += dirsize( $path , $count );  }
      elseif( is_file( $path ) )
       {  $count++;  }
     }
   }
  closedir($dh);
  return $count;
}
$count = 0;
print dirsize("./" , 0);
?>



Разрезать до расширения можно так
Код

if ( substr($file,-3,3) != 'htm'){....


А вот как поставить это дополнительное условие?
--------------------
---------------------------------- «Филисофия жизни ©»  ---------------------------------- 
PM MAIL   Вверх
krulik
Дата 15.4.2006, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 132
Регистрация: 14.1.2006
Где: Украина, Житомир

Репутация: 2
Всего: 4



Alek74 ты мой код пробовал? Там все работает. Не нравится способ определения типа файла? Используй другую (это уже твое решение. Тем более я просто взял код из своей гоствевухи и только тело цикла переделал под твой вопрос.). Я просто привел возможный алгоритм

Цитата

А вот как поставить это дополнительное условие?

Как ни крути все равно прийдется сравнивать каждый файл. И к томуже в куске кода который ты привел я не вижу ничего похожего на решение твоего вопроса.

ЗЫ: может из-за отсутствия большого опыта в программированиии на РНР, но другого алгоритма кроме предложеного мною ранее я не вижу!

Это сообщение отредактировал(а) krulik - 15.4.2006, 12:08
--------------------
Каждый день несет в себе частицу вечности (Паоло Коэльо)Если вам плюют в спину, значит вы в переди! (Конфуций)Все, что имеет форму, может исчезнуть в одно мгновение (Харуки Мураками)
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1115 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.