Heim > Backend-Entwicklung > PHP-Tutorial > PHP7 PHP-Kenntnisse zum Hochladen von Bildern basierend auf Curl

PHP7 PHP-Kenntnisse zum Hochladen von Bildern basierend auf Curl

jacklove
Freigeben: 2023-04-01 19:08:02
Original
2992 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

Artikel, die Sie interessieren könnten:

PHP5.0~ 5.6 Kompatibilität verschiedener Versionen cURL-Datei-Upload-Funktion Beispielanalyse PHP-Tipps

PHP-Blockabfrage-Implementierungsmethodenanalyse PHP-Tipps

CURL-Datei Beispiel-Analyse einer PHP-Funktion hochladen, die mit PHP5 und PHP7 kompatibel ist. Tipps

Das obige ist der detaillierte Inhalt vonPHP7 PHP-Kenntnisse zum Hochladen von Bildern 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