Cześć.
Tym razem znowu podstawy PHP, o których za wiele z googlowania nie wywnioskowałem. Dlatego proszę o pomoc w naprowadzeniu tutaj. Bez zbędnego tym razem offtopicowania przejdę od razu do rzeczy. Muszę pobrać pewną stronę koniecznie mniej więcej w taki sposób jak poniżej, ponieważ na serwerze co może normalne wywoływanie curla zostało zablokowane ze względów bezpieczeństwa (tak mi pokazał error log). A nie mogę użyć normalnego pobrania, gdyż muszę koniecznie zmodyfikować nagłówki o niestandardowy useragent. Wolał bym też nie pobierać zapisując najpierw do pliku. Ok, poniższy kod działa jak należy.
$opts = array(
'http' => array(
'method' => 'GET',
'header' => 'User-Agent: niestandardowy'
)
);
$url = 'adres_strony';
$context = stream_context_create($opts);
$fp = fopen($url, 'r', false, $context);
fpassthru($fp);
fclose($fp);
I czy teraz jedynym sposobem uzyskania zawartości strony jako stringu, na którym można operować, jest coś w deseń tego co poniżej. Czy są inne, lepsze/szybsze/bardziej prawidłowe metody? Prosił bym o przykłady rozwiązań. Z góry dziękuję.
$buffer = '';
if ($fp) {
while (!feof($fp)) {
$buffer .= fgetss($fp, 5000);
}
}
echo "<br>" . $buffer;