• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Zliczanie ilości folderów w folderze

0 głosów
989 wizyt
pytanie zadane 19 lutego 2017 w PHP przez TheBan Obywatel (1,400 p.)
zamknięte 19 lutego 2017 przez TheBan

Proszę was o podanie komendy w php, która zliczy mi ilość folderów znajdujących się w folderze. Szukałem takiej funkcji, ale znalazłem tylko takie co liczą ilość plików, ale nie liczą ilości folderów. Dziękuję za wszelką pomoc!

komentarz zamknięcia: najlepsza

2 odpowiedzi

+1 głos
odpowiedź 19 lutego 2017 przez HaKIM Szeryf (87,590 p.)
wybrane 19 lutego 2017 przez TheBan
 
Najlepsza
komentarz 19 lutego 2017 przez TheBan Obywatel (1,400 p.)
edycja 19 lutego 2017 przez TheBan

Po drobnym ulepszeniu zadziałało :) 

count(scandir($dir, 1));

 

komentarz 19 lutego 2017 przez HaKIM Szeryf (87,590 p.)

Raczej nie. To zlicza Ci wszystko.

Musisz, jak w skrypcie Criss'a, przeprowadzić walidację czy dane „cuś” jest folderem i dopiero wtedy zwiększać ilość.

Jednakże kod Criss'a nie działa, przerobiłem go lekko:

$path = '/';
$dir_content = array_diff(scandir($path), ['.', '..']);
$count = 0;

foreach($dir_content as $dir)
{
   if(is_dir($path . $dir))
      $count++;
}
echo $count;

 

2
komentarz 19 lutego 2017 przez efiku Szeryf (75,160 p.)
<?php
$count = 0;
$files = new DirectoryIterator("/etc/");
foreach ($files as $fileInfo){
    if($fileInfo->isDir() && !$fileInfo->isDot()) ++$count;
}

echo iterator_count($files); // all files
echo "\n{$count}"; // only dirs

 

 

Oczywiście wszyscy zapominamy o generatorach i iteratorach, nie? ;)

 

+2 głosów
odpowiedź 19 lutego 2017 przez criss Mędrzec (172,570 p.)

Coś w tym stylu:

$dir_content = array_diff(scandir("path"), ['.', '..']);
$count = 0;
foreach($dir_content as $dir)
{
   if(is_dir($dir))
      $count++;
}
echo $count;

 

komentarz 19 lutego 2017 przez TheBan Obywatel (1,400 p.)
Dzięki :)
komentarz 19 lutego 2017 przez criss Mędrzec (172,570 p.)
Ah, faktycznie - is_dir powinien otrzymać pełną ścieżke do katalogu.

Podobne pytania

0 głosów
1 odpowiedź 527 wizyt
pytanie zadane 26 lutego 2017 w C i C++ przez niezalogowany
0 głosów
2 odpowiedzi 2,832 wizyt
pytanie zadane 7 września 2016 w Urządzenia mobilne przez DarthMazut Bywalec (2,990 p.)
0 głosów
5 odpowiedzi 830 wizyt
pytanie zadane 10 maja 2015 w C i C++ przez Oliwier Wolf Użytkownik (950 p.)

93,742 zapytań

142,678 odpowiedzi

323,297 komentarzy

63,326 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...