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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Как посчитать количество папок?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Помогите!
idimka
Отправлено: 16 Июня, 2007 - 20:51:00
Post Id


Новичок


Покинул форум
Сообщений всего: 14
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




Нужен код подсчета количества папок.
В данный момент этот код выводит:
1
1
1
...
А мне надо:
1
2
3
...

Именно подсчет папок!

Помогите, пожалуйста.

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.  
  4. $dirname = '../proba';
  5. scan_dir($dirname);
  6.  
  7.    function scan_dir($dirname)
  8.    {
  9.      // Открываем текущую директорию
  10.      $dir = opendir($dirname);
  11.      // Читаем в цикле директорию
  12.      while (($file = readdir($dir)) !== false)
  13.      {
  14.  // Если это не родительская директория и не текущая директория, то
  15.        if($file != "." && $file != "..")
  16.        {
  17.  
  18.          if(is_dir($dirname."/".$file))//если это директоиия
  19.          {
  20.            $count = count ($dirname."/".$file);
  21.            echo $count.'<br>';//почему-то на этом форуме не выводится штмл-тег бр
  22.            scan_dir($dirname."/".$file);//продолжать скнарирование др. директорий
  23.  
  24.          }
  25.  
  26.          if(is_file($dirname."/".$file))//если это файл
  27.          {
  28.  
  29.  
  30.          }
  31.        }
  32.      }
  33. // Закрываем директорию
  34.      closedir($dir);
  35.    }
  36. ?>
  37.  
 
 Top
valenok Модератор
Отправлено: 16 Июня, 2007 - 21:31:34
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




count -- Посчитать количество элементов массива или количество свойств объекта

а вы что считаете?


-----
Truly yours, Sasha.
 
My status
 Top
idimka
Отправлено: 16 Июня, 2007 - 21:42:19
Post Id


Новичок


Покинул форум
Сообщений всего: 14
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




считаю папки. а чем тогда считать надо?
 
 Top
valenok Модератор
Отправлено: 17 Июня, 2007 - 06:26:01
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




$count = count ($dirname."/".$file);
что вы передаёте в функцию и что эта фунция делает?


-----
Truly yours, Sasha.
 
My status
 Top
idimka
Отправлено: 17 Июня, 2007 - 14:45:34
Post Id


Новичок


Покинул форум
Сообщений всего: 14
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




пытаюсь countОМ() засечь открытие папок. когда папка открывается (а за это у меня отвечает $dirname."/".$file) count должен это посчитать и передать в переменую $count.
предполагаю, что надо не $dirname."/".$file передавать. А что еще туда поместить такое, отвечающее за открытие папки, не знаю.
Я этот каунт крутил, крутил, в итоге что-то не выдающее ошибку у меня получилось. но работает совершенно не так как надо.
Понимаю, вы хотите, чтобы я своей головой до этого дошел, это правильно, это полезно.
Я просто имею мизер знаний в php. Решил пойти по пути познания его на практике, просто надо срочно сделать одну не очень сложную штуку, а потом уже углублятся.
 
 Top
valenok Модератор
Отправлено: 17 Июня, 2007 - 15:24:15
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




$dirname."/".$file = "folder/sub" это строка, и низачто она не отвечает.
Цитата:
пытаюсь countОМ() засечь открытие папок
подскажите пожалуйста что делает count

Цитата:
засечь открытие папок
что такое "открытие" папок и что в вашем коде их открывает?

Цитата:
Понимаю, вы хотите, чтобы я своей головой до этого дошел
меня если честно совсем не волнует кто и чем думает, но логику программирования я объяснять не умею.

резюме:
узнайте что делает функция count()
выучите определение этой функции кое приводится на оф. сайте php
и объясните собственными словами что именно делает эта функция, на уровне дет. сада


-----
Truly yours, Sasha.
 
My status
 Top
UserID
Отправлено: 17 Июня, 2007 - 16:44:13
Post Id



Магистр JavaScript


Покинул форум
Сообщений всего: 151
Дата рег-ции: Авг. 2006  


Помог: 0 раз(а)




valenok, ты замучал его(или её) уже Улыбка

Чего проще проверять так:
PHP:
скопировать код в буфер обмена
  1.  
  2. $dir_amount = 0;
  3. if(is_dir($dir))
  4. {
  5.     $dir_amount++;
  6. }
  7.  


Таким образом в $dir_amount будет кол-во папок.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB