Verwenden von file_get_contents zum Hochladen von Dateien
Während CURL ein praktisches Tool zum Hochladen von Dateien sein kann, bietet file_get_contents eine alternative Lösung mit der Verwendung von HTTP-Stream-Kontext. In diesem Artikel wird der Vorgang des Hochladens einer Datei auf einen Remote-Webserver mit file_get_contents untersucht.
Definieren eines mehrteiligen Inhaltstyps
Bei mehrteiligen Inhaltstypanforderungen eine klare Grenze Die Zeichenfolge trennt jeden Teil der Anfrage. Diese Grenze sollte nicht im Inhaltstext erscheinen und wird normalerweise als Zeitstempel festgelegt.
Sobald die Grenze festgelegt ist, fügen Sie sie in den Content-Type-Header ein, um den Webserver über das erwartete Trennzeichen zu informieren.
Erstellen des Inhaltskörpers
Erstellen Sie einen Formularfeldnamen und verfassen Sie den Inhaltskörper gemäß der HTTP-Multipart-Spezifikation. Geben Sie für jede hochgeladene Datei ihren Namen und den ursprünglichen Dateinamen im Header „Content-Disposition“ an. Fügen Sie den MIME-Typ für die ordnungsgemäße Dateierkennung hinzu.
Erstellen des Kontexts
Konstruieren Sie den Stream-Kontext, indem Sie die Methode, den Header und den Inhalt für die HTTP-Anfrage definieren.
Initiieren des Uploads
Führen Sie die Funktion „file_get_contents“ mit dem Kontext aus, um die Datei hochzuladen.
Überlegungen
Beachten Sie, dass Binärdateien ohne Codierung übertragen werden können, da HTTP von Natur aus Binärdaten unterstützt.
Das obige ist der detaillierte Inhalt vonWie lade ich Dateien mit file_get_contents mit Multipart Content-Type hoch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!