Ich habe unter Code, um Inhalt aus dem Remote-Verzeichnis zu erhalten.Verwenden Sie opendir einmal anstelle von es in For-Schleife
$dirHandle = opendir("ssh2.sftp://$sftp/".PATH_OUT);
while (false !== ($file = readdir($dirHandle))) {
// something...
}
Nun, die Sache ist, über Code in forloop
ist. wenn ich $dirHandle = opendir("ssh2.sftp://$sftp/".PNB_PATH_OUT);
außerhalb von Forloop setze, gibt es mir das erforderliche Ergebnis nur für die erste Aufzeichnung. Also, offensichtlich ist es readdir
funktioniert nicht für den zweiten Datensatz in forloop
.
Wie kann ich das so machen, dass ich opendir
nur einmal verwenden muss und diese Verbindung mehr als einmal verwenden?
Erforderliche Lösung
$dirHandle = opendir("ssh2.sftp://$sftp/".PATH_OUT);
for(...){
while (false !== ($file = readdir($dirHandle))) {
// something...
}
}
Es gibt mir Erwärmung. Nachricht: readdir() erwartet, dass Parameter 1 resource ist, null gegeben –
Debug $ dirHandle, entweder opendir schlägt fehl oder es wird auf Null gesetzt. Aktualisieren Sie Ihren Post mit Ihrem tatsächlichen Code, damit wir sehen können. – Devon
Ich habe '$ dirHandle = rewinddir ($ dirHandle);'. Jetzt habe ich nur 'rewinddir ($ dirHandle);' und die Nachricht ist: 'rewinddir(): stream unterstützt keine Suche ' –