phpカールアップロードファイル

大家讲道理
リリース: 2016-11-08 14:23:26
オリジナル
1370 人が閲覧しました

サーバー側のアップロード ファイル処理スクリプトは、upload.php:

<?php
 
print_r($_POST);
print_r($_FILES);
?>
ログイン後にコピー

1. CURL のデフォルト メソッドを使用します


//如果php文件是utf8编码,系统是GBK编码,那么就需要转下编码,要不然Php在系统中找不到这个文件 
$file = realpath(mb_convert_encoding(&#39;测试图片.JPG&#39;,&#39;GBK&#39;,&#39;utf8&#39;));
 
$file = realpath(&#39;temp.jpg&#39;); //要上传的文件 
$fields[&#39;f&#39;] = &#39;@&#39;.$file; // 前面加@符表示上传图片
 
$ch =curl_init();
 
 
curl_setopt($ch,CURLOPT_URL,&#39;http://localhost/upload.php&#39;);
 
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
 
 
$content = curl_exec($ch);
 
echo $content;
ログイン後にコピー

2。コンテンツをファイルとしてリモート サーバーにアップロードしますが、ローカル サーバーに一時ファイルを構築したくありません。このようにして、別の書き方ができます



$contents =<<< &#39;TEXT&#39;
这里是文件内容,也可以是图片二进制,图片需要修改上传文件类型
TEXT;
 
$varname = &#39;my&#39;;//上传到$_FILES数组中的 key
$name = &#39;3.txt&#39;;//文件名
$type = &#39;text/plain&#39;;//文件类型
 
$key = "$varname\"; filename=\"$name\r\nContent-Type: $type\r\n";
$fields[$key] = $contents;
 
 
 
$ch =curl_init();
 
 
curl_setopt($ch,CURLOPT_URL,&#39;http://localhost/upload.php&#39;);
 
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
 
 
$content = curl_exec($ch);
 
echo $content;
ログイン後にコピー

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!