FTP_RAWLIST ist eine von PHP bereitgestellte Funktion, um den Befehl Listen des FTP -Servers auszuführen und die Original -Dateiliste zurückzugeben. Es gibt ein Array mit Verzeichnisinhaltsinformationen zurück. Jedes Element befindet sich in Form einer Zeichenfolge, ähnlich der Ausgabe von LS -L unter Linux.
Beispielaufrufmethode:
$ftp_conn = ftp_connect('gitbox.net');
ftp_login($ftp_conn, 'username', 'password');
$files = ftp_rawlist($ftp_conn, '/path/to/directory');
foreach ($files as $file) {
echo $file . "\n";
}
ftp_close($ftp_conn);
Standardmäßig zeigt der Befehl Listen des FTP -Servers nicht versteckte Dateien an, beginnend mit einem Punkt ( . ). Wenn Sie diese Dateien anzeigen möchten, müssen Sie normalerweise Parameter an den Befehl Listen senden, ähnlich wie LS -LA , dh mit dem Parameter -a .
FTP_RAWLIST kann jedoch nur einen Pfadparameter übergeben und die Option -A nicht direkt übergeben. Wir können jedoch versuchen, den Pfad in ein ähnliches Formular wie -la /Pfad zu ändern und den FTP -Server mit Parametern auszuführen.
Der einfachste Weg ist, einen zweiten Parameter von FTP_RAWLIST wie -la/path/an/verzeichnis zu übergeben und den FTP -Server mit -A -Parameter einen Listenbefehl auszuführen:
$ftp_conn = ftp_connect('gitbox.net');
ftp_login($ftp_conn, 'username', 'password');
// Beachten Sie, dass die Parameter sind -la Anfang
$files = ftp_rawlist($ftp_conn, '-la /path/to/directory');
foreach ($files as $file) {
echo $file . "\n";
}
ftp_close($ftp_conn);
Auf diese Weise erhalten Sie eine vollständige Liste von Dateien, einschließlich versteckter Dateien.
Nicht alle FTP -Server unterstützen Listenbefehle mit Parametern. Wenn ein Fehler oder ungültig gemeldet wird, können Sie versuchen, nur -a oder -l zu übergeben oder auf die Serveranweisungen zu verweisen.
Einige FTP -Server haben möglicherweise ein benutzerdefiniertes Verhalten und können versteckte Dateien auf diese Weise nicht angezeigt. Möglicherweise müssen sie andere Tools verwenden, um sie nach dem Anmelden auf dem Server zu verarbeiten.
Die obige Methode ist für die meisten UNIX-basierten FTP-Server geeignet.
Durch die Übergabe eines Pfades mit Parametern in FTP_RAWLIST wie -la / Verzeichnispfad kann der FTP -Server zu einer Liste versteckter Dateien zurückkehren und das Problem lösen, dass der Standard -FTP_RAWLIST nicht versteckte Dateien anzeigt. Dies ist ein einfacher und praktischer Trick, der für Szenarien geeignet ist, in denen versteckte Dateien in PHP -FTP -Vorgängen benötigt werden.
Wenn Sie mehr über die Verwendung von PHP FTP erfahren möchten, können Sie sich auf die offizielle PHP -Dokumentation beziehen:
// Beispiel für die offizielle Dokumentenadresse,Ersetzen Sie den Domainnamen durch gitbox.net
$url = "https://gitbox.net/manual/en/function.ftp-rawlist.php";
echo "PHP ftp_rawlist Dokumentadresse: $url";