Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Skrypt czyta tylko pierwsza linijke
Forum PHP.pl > Forum > Przedszkole
666
Witam
Mam taki problem .Otóż skrypt nie pobiera wszystkich lini jakie są w pliku tylko pierwsza
  1. <?
  2. $plik = ("lista_domen1.txt");
  3.  
  4. $czytaj = file_get_contents($plik);
  5.  
  6. preg_match_all('@^(?:http://)?([^/]+)@i',$czytaj, $matches);
  7. $host = $matches[1];
  8. print_r ($host) ;
  9. ?>
Foxx
Jaka jest zawartość lista_domen1.txt ?
Foxx
Szczerze mówiąc nie wiem na czym polega błąd u Ciebie, ale może to chcesz osiągnąć:
  1. <?php
  2. preg_match_all('/http://?([^/]+)/',$czytaj, $matches);
  3. print_r($matches);
  4. ?>
666
Mam jeszcze jeden problem związany z tematem .Chodzi o to ze gdy wyciągnołem domeny z adresu i wyrzuciłem duplikaty to tak samo chciałem zrobić z reszta adresu i teraz pytanie jak zrobić żeby spowrotem po oczyszczeniu połaczyc adres w jedno
erix
Szklane kule w kosmosie.

Pokaż kod, który masz w tej chwili.
666
No wiec oto kod.
  1. <?php
  2. $plik = (&#092;"lista_domen1.txt\");
  3. $czytaj = file_get_contents($plik);
  4.  
  5. preg_match_all('/http://?([^/]+)/',$czytaj, $matches);
  6. $arr=$matches[1];
  7. $wynik = array_unique($arr);
  8. foreach ( $wynik as $koniec )
  9. echo $koniec ;
  10.  
  11. $czytaj2  = file_get_contents($plik);        
  12. preg_match_all(&#092;"/?([^.]+)/?)\", $czytaj2, $mat);
  13. $arr2=$mat[1];
  14. $wynik2 = array_unique($arr2);
  15. foreach ( $wynik2 as $koniec2 )
  16. echo $koniec2 ;
  17.  
  18. ?>
Ale dochodzi do tego drugi problem z preg_match_allem chce wyciągnąć to co pogrubione
http://algorytmy.pl/doc/xhtml/?id=3114
erix
Litości, nie pogrubiaj listingów, bo się gorzej czyta.

A ja bym to zrobił inaczej: wyciągasz całość adresu (łącznie z parametrami), za pomocą parse_url" title="Zobacz w manualu PHP" target="_manual wyciągasz hosta. Domeny wpisujesz jako klucz tablicy, a cały adres, to tablica w tym kluczu, w ten deseń:

  1. <?php
  2. $add = array(
  3.      'http://domena.pl' => array('http://domena.pl/adres', 'http://domenta.pl/adres2')
  4. )
  5. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.