file() pobieranie adresów url z pliku...

0

Mam pytanie mam taki kod

<?php
$a = file( './plik.txt' );
preg_match_all( '#<td>(.*?)</td>#is', $a, $b, PREG_SET_ORDER );
print_r( $b ) ;
 
?>

Chciałbym aby pobierało mi adresy url z plik.txt i po kolei wyciągało z nich wyrażenie regularne. Każdy 1 url to jedna linia w pliku. Z góry uprzedzam że jestem laikiem w tych sprawach i jeszcze nie za bardzo kumam tego wszystkiego ;)

0

Jakie jest pytanie?

0

Nie działa mi ten skrypt i nie wiem gdzie jest błąd. Tak jak pisałem chcę aby skrypt pobierał sobie adresy url z pliku 1 adres url 1 wiersz.
W treści strony z adresu url ma znaleźć wyrażenie regularne i wyświetlić je. Czyli mam 3 adresy url to z tych trzech stron chcę aby wyświetliło mi zawartość między znacznikami

0

A zobaczyłeś na przykład w dokumentacji funkcji file?
Btw, ten Twój skrypt robi coś w ogóle innego, niżeli piszesz, aby chciał robić.

0

Sorki ale nie znam sie za dobrze na tym ale sprawdzałem file() czyta wiersz po wierszu z pliku i pakuje to do tablicy. Rozumiem że teraz muszę te dane wyciągnąć jakoś z tablicy i wstawić w $a??.
Wcześniej korzystałem z file_get_contents czyli dla mojego skryptu $s = file_get_contents( 'http://jakasdomena.pl/ehfs.html' ); i to mi działało.
Ale teraz mam kilka adresów url w pliku z tej samej domeny i chciałbym by podmieniało mi to automatycznie.

0

Rozumiem że teraz muszę te dane wyciągnąć jakoś z tablicy i wstawić w $a??.

foreach
0

Coś źle znowu zrobiłem ;/ kod wygląda tak:

<?php
$a = file( './plik.txt' );
foreach ($a as $s)
{
preg_match_all( '#<td>(.*?)</td>#is', $s, $b, PREG_SET_ORDER );
print_r( $b ) ;
}
 
?>

I dostaje Array ( ) Array ( )

0

Nie znam się na wyrażeniach regularnych, więc nie powiem, czy jest ono poprawne, ale masz jeden zasadniczy błąd: w zmiennej $s masz adres strony, a nie jej zawartość.

0

Ano tak w takim przypadku zmodyfikowałem skrypt

<?php
$a = file( './plik.txt' );

foreach ($a as $t)
{
$s = file_get_contents( $t );
preg_match_all( '#<td>(.*?)</td>#is', $s, $b, PREG_SET_ORDER );

print_r( $string ) ;
}
 
?>

Lecz wyrzuca mi błąd:

Warning: file_get_contents(http://www.jakasdomena.pl/produkt/dlksda334.html ) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/jail/.../public_html/tabela3.php on line 6

0

Najwyraźniej nie może pobrać zawartości strony.

0

temat nieaktualny ogarnąłem go dzięki podpowiedzi jednego z forumowiczów trim() i wszystko lata ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1