Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Wystąpienie danego wyrazu w ciągu, Mam z tym problem
shy
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 21.03.2014

Ostrzeżenie: (0%)
-----


Witam serdecznie. Mam problem dotyczący skryptu zliczającego ilość danych słów.

Póki co potrafię zrobić tą operacje tylko na jednym pliku tekstowym, która wygląda tak:

  1. <?php
  2. $data = file_get_contents("plik.txt");
  3. echo substr_count($data, "DanyWyraz");
  4. ?>


Chodzi mi mianowicie o to, żeby operacja dotyczyła wszystkich plików w danym folderze i podfolderach. Przykładowo:

Folder 1->Podolder 1->wiesiek.txt / rysiek.txt / grzesiek.txt
Folder 2->Podolder 2->janina.txt / grazyna.txt / alina.txt

Myślę, że w jak najlepszy sposób naświetliłem Wam o co chodzi.

Prosiłbym o pomoc, z góry dziękuję.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
ghost1511
post
Post #2





Grupa: Zarejestrowani
Postów: 186
Pomógł: 18
Dołączył: 2.09.2010

Ostrzeżenie: (0%)
-----


Musisz odczytać zawartość folderu. Znaleźć interesujące Cię pliki i za pomocą pętli otworzyć każdy plik z osobna.
Go to the top of the page
+Quote Post
shy
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 21.03.2014

Ostrzeżenie: (0%)
-----


Otwieranie każdego pliku z osoba nie jest możliwe w tym przypadku, gdyż nie znam ich nazw. Znam nazwę folderu i jego podfolderów. Proszę o pomoc.
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Dlatego ghost wyraznie napisal: "Musisz odczytać zawartość folderu"
W necie masz całą mase kodow, ktore czytają zawartosc folderow.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
styryl
post
Post #5





Grupa: Zarejestrowani
Postów: 223
Pomógł: 27
Dołączył: 16.04.2008
Skąd: Bakutilu

Ostrzeżenie: (0%)
-----


Tak na szybko to coś w tym rodzaju:

  1. $dir = getcwd();
  2. $search = 'DanyWyraz';
  3. $count = 0;
  4. $iterator = new RecursiveDirectoryIterator( $dir, FilesystemIterator::SKIP_DOTS );
  5. foreach (new RecursiveIteratorIterator($iterator, RecursiveIteratorIterator::CHILD_FIRST) as $file)
  6. {
  7. if( $file->isFile() )
  8. {
  9. if( $file->getExtension() == 'txt' ) {
  10. $count += substr_count(file_get_contents( $file->getPathname() ), $search);
  11. }
  12. }
  13. }
  14.  
  15. echo $count;
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 08:25