Article View: pl.comp.lang.php
Article #219962Re: Funkcja do zapisu strony do pliku
From: ant
Date: Sun, 02 Aug 2009 13:06
Date: Sun, 02 Aug 2009 13:06
99 lines
3956 bytes
3956 bytes
Miroro wrote:
> Użytkownik "Miroro" <miroro-ciach-@tlen.pl> napisał w wiadomości
> news:h53e41$v2e$1@mx1.internetia.pl...
>> Użytkownik "Lemat" <#@lemat.priv.pl> napisał w wiadomości
>> news:h52gln$82g$1@nemesis.news.neostrada.pl...
> zmieniłem na coś takiego i poszło
> <?php
> $tekst=file_get_contents ('dane.txt');
> file_put_contents ('wynik.txt',$tekst);
> echo ($tekst);
> echo "Koniec";
> ?>
> tylko to poszło z plikami na serwerze
> teraz jak zmusić go do pracy z plikami z określonej ścieżki?
Rzuć okiem na to:
<?php
// lista adresow do pobrania
$adres = array();
$adresy[] = 'http://www.google.pl/';
$adresy[] = 'http://www.onet.pl/';
$adresy[] = 'http://www.wp.pl/';
$adresy[] = 'http://www.interia.pl/';
// Katalog dla plikow wynikowych (wzgledna lub bezwzgledna sciezka)
$katalog = 'dupa';
// ---------------------------------------------------------------------------- #
// sprawdzamy czy katalog istnieje
if(is_dir($katalog))
{
// jesli katalog istnieje, to na wszelki wypadek zamieniamy
// go na sciezke bezwzgledna
$katalog = realpath($katalog);
// Sprawdzamy czy mamy uprawnienia do zapisu w tym katalogu
if(is_writable($katalog))
{
// lecimy przez liste adresow
foreach($adresy as $adres)
{
// generujemy nazwe pliku wynikowego
$nazwaPlikuWynikowego = md5($adres) . '.html';
// dla wygody generujemy pelna sciezke
$sciezka = $katalog . '/' . $nazwaPlikuWynikowego;
// pobieramy tresc z url'a
$tresc = file_get_contents($adres);
// jesli pobranie poszlo ok...
if($tresc)
{
// wyswietlamy odrobine informacji
echo "$adres => {$sciezka}" . PHP_EOL;
// tworzymy plik wynikowy
$fp = fopen($sciezka, 'wb+');
// sprawdzamy czy "sie utworzyl"
if($fp)
{
// zapisujemy tresc do pliku
fputs($fp, $tresc);
// zamykamy plik
fclose($fp);
}
// jesli plik wynikowy "nie utworzyl sie",
// wyswietlamy komunikat
else
{
echo "Nie mozna utworzyc pliku wynikowego ";
echo "{$sciezka}." . PHP_EOL;
}
}
// jesli wystapil problem z pobieraniem adresu, komunikat
else
{
echo "Nie mozna pobrac `{$adres}`." . PHP_EOL;
}
}
}
else // jesli brak uprawnien do zapisu w katalogu, komunikat
{
echo "Brak uprawnien do zapisu w katalogu {$katalog}" . PHP_EOL;
}
}
else // jesli podany katalog nie istnieje, komunikat
{
echo "`{$katalog}` nie jest katalogiem!" . PHP_EOL;
}
?>
Technical Details
Message-ID:
<h543hu$3tp$1@nemesis.news.neostrada.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!newsfeed.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mailReferences:
<h52g37$fer$1@mx1.internetia.pl> <h52gln$82g$1@nemesis.news.neostrada.pl> <h53e41$v2e$1@mx1.internetia.pl> <h53flg$95j$1@mx1.internetia.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!newsfeed.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail From: ant <ant@nowhere.tld> Newsgroups: pl.comp.lang.php Subject: Re: Funkcja do zapisu strony do pliku Date: Sun, 02 Aug 2009 15:06:17 +0200 Organization: TP - http://www.tp.pl/ Lines: 99 Message-ID: <h543hu$3tp$1@nemesis.news.neostrada.pl> References: <h52g37$fer$1@mx1.internetia.pl> <h52gln$82g$1@nemesis.news.neostrada.pl> <h53e41$v2e$1@mx1.internetia.pl> <h53flg$95j$1@mx1.internetia.pl> NNTP-Posting-Host: 79.189.151.28 Mime-Version: 1.0 X-Trace: nemesis.news.neostrada.pl 1249218942 4025 79.189.151.28 (2 Aug 2009 13:15:42 GMT) X-Complaints-To: usenet@news.neostrada.pl NNTP-Posting-Date: Sun, 2 Aug 2009 13:15:42 +0000 (UTC) User-Agent: Thunderbird 2.0.0.17 (X11/20080927) In-Reply-To: <h53flg$95j$1@mx1.internetia.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit