PHP7-Upload-Bildfunktion basierend auf Curl

不言
Freigeben: 2023-03-29 06:54:02
Original
1795 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich die von PHP7 basierende Bild-Upload-Funktion vor und vergleicht und analysiert die Implementierungs- und Verwendungsfähigkeiten der Curl-Bild-Upload-Funktion vor den Versionen PHP5.5 und PHP7 in Form von Beispielen siehe es

Das Beispiel in diesem Artikel beschreibt die von PHP7 basierend auf Curl implementierte Bild-Upload-Funktion. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Je nach verschiedenen PHP-Versionen ist die Methode zum Hochladen des Curl-Simulationsformulars unterschiedlich

Vor PHP5.5

$curl = curl_init();
if (defined('CURLOPT_SAFE_UPLOAD')) {
  curl_setopt($curl, CURLOPT_SAFE_UPLOAD, false);
}
$data = array('file' => '@' . realpath($path));//‘@' 符号告诉服务器为上传资源
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1 );
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_USERAGENT,"TEST");
$result = curl_exec($curl);
$error = curl_error($curl);
Nach dem Login kopieren

Nach php5.5, zu php7

$curl = curl_init();
curl_setopt($curl, CURLOPT_SAFE_UPLOAD, true);
$data = array('file' => new \CURLFile(realpath($path)));
url_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1 );
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_USERAGENT,"TEST");
$result = curl_exec($curl);
$error = curl_error($curl);
Nach dem Login kopieren

Eine kompatible Methode wird unten bereitgestellt:

$curl = curl_init();
if (class_exists('\CURLFile')) {
 curl_setopt($curl, CURLOPT_SAFE_UPLOAD, true);
$data = array('file' => new \CURLFile(realpath($path)));//>=5.5
} else {
 if (defined('CURLOPT_SAFE_UPLOAD')) {
  curl_setopt($curl, CURLOPT_SAFE_UPLOAD, false);
 }
 $data = array(&#39;file&#39; => &#39;@&#39; . realpath($path));//<=5.5
}
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1 );
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_USERAGENT,"TEST");
$result = curl_exec($curl);
$error = curl_error($curl);
Nach dem Login kopieren

Darunter:

$path: ist die Adresse von das hochzuladende Bild

$url: Zielserveradresse

zum Beispiel

$url="http://localhost/upload.php";
$path = "/bg_right.jpg"
Nach dem Login kopieren

Beispiel für upload.php:

<?php
  file_put_contents(time().".json", json_encode($_FILES));
  $tmp_name = $_FILES[&#39;file&#39;][&#39;tmp_name&#39;];
  $name = $_FILES[&#39;file&#39;][&#39;name&#39;];
  move_uploaded_file($tmp_name,&#39;audit/&#39;.$name);
?>
Nach dem Login kopieren

Verwandte Empfehlungen:

PHP implementiert das Hochladen mehrerer und einzelner Bilder -Bild-Upload-Funktionen

PHP PDO-basierte Datenbankbetriebsklasse [kann MySQL, SQLServer und Oracle unterstützen]

PHP implementiert die Funktion, die wiederholte Übermittlung von Formularen zu verhindern (basierend auf der Token-Verifizierung)

Das obige ist der detaillierte Inhalt vonPHP7-Upload-Bildfunktion basierend auf Curl. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage