Korzystanie ze zdalnych plików
Jeśli parametr w pliku &php.ini;
zostanie włączony, będzie można używać adresów HTTP i
FTP w większości
funkcji, które jako parametr przyjmują nazwę pliku, włączając w to instrukcje
include,
include_once, require oraz
require_once
(opcja musi być włączona).
Więcej informacji o protokołach obsługiwanych przez PHP
znajduje się w .
Możesz wykorzystać tę własność aby otworzyć plik na zdalnym serwrze,
przetworzyć jego zawartość i użyć wyników w zapytaniu do bazy danych,
lub po prostu wyświetlić plik dostosowując jego wygląd
do swojej strony.
Pobieranie tytułu zdalnej strony
Nie można otworzyć zdalnego pliku.\n";
exit;
}
while (!feof ($file)) {
$line = fgets ($file, 1024);
/* Zadziała tylko wtedy, gdy tytuł i jego znaczniki są w tej samej linii */
if (preg_match ("@\(.*)\@i", $line, $out)) {
$title = $out[1];
break;
}
}
fclose($file);
?>
]]>
Możesz również zapisywać pliki na serwerach FTP (zakładając, że połączyłeś
się jako użytkownik z odpowiednimi prawami dostepu). Przy użyciu tej metody
możesz jedynie tworzyć nowe pliki. Jeśli spróbujesz nadpisać istniejący
plik, wywołanie funkcji fopen
zwróci błąd.
Aby połączyć się jako użytkowni inny niż 'anonymous', należy określić
nazwę uzytkownika (możliwe, że i hasło) w URL, w następujący sposób
'ftp://użytkownik:hasło@ftp.example.com/ścieżka/do/pliku'.
(Można używać takiej samej składni aby uzyskać dostęp do plików za pomocą
HTTP w czasie wykorzystywania uwierzytelnienia typu Basic.)
Zapisywanie danych na zdalnym serwerze.
Nie można otworzyć zdalnego pliku do zapisu.\n";
exit;
}
/* Tutaj zapisujemy dane. */
fwrite ($file, $_SERVER['HTTP_USER_AGENT'] . "\n");
fclose ($file);
?>
]]>
Być może powyższy przykład nasunął ci pomysł, by użyć tej metody
do zdalnego zapisywania logów. Niestety taka próba się nie powiedzie,
gdyż wywołanie fopen zwróci błąd, jeśli zdalny
plik już istnieje. Aby zrealizować zdalne logowanie powinieneś przyjrzeć
się funkcji syslog.