"@E:/png.png");//文件路径,前面要加@,表明是文件上传. $curl = curl_init("http://localhost/a.php"/> "@E:/png.png");//文件路径,前面要加@,表明是文件上传. $curl = curl_init("http://localhost/a.php">

PHP使用CURL下传文件

WBOY
Release: 2016-06-13 13:02:07
Original
823 people have browsed it

PHP使用CURL上传文件
用curl上传文件的话很方便,什么header,post串都不用生成了,用fsockopen要写一堆
curl:

$file = array("upimg"=>"@E:/png.png");//文件路径,前面要加@,表明是文件上传.
$curl = curl_init("http://localhost/a.php");
curl_setopt($curl,CURLOPT_POST,true);
curl_setopt($curl,CURLOPT_POSTFIELDS,$file);
curl_exec($curl);
Copy after login

fsockopen
$uploadFile = file_get_contents("E:/png.png");
$boundary   = md5(time());

$postStr .="--".$boundary."\r\n";//边界开始,注意默认比header定义的boundary多两个'-'
$postStr .="Content-Disposition: form-data; name=\"upimg\"; filename=\"E:/png.png\"\r\n";
$postStr .="Content-Type: image/png\r\n\r\n";
$postStr .=$uploadFile."\r\n";
$postStr .="--".$boundary."\r\n";//边界结束
fwrite($fp,"POST /a.php HTTP/1.0\r\n");
fwrite($fp,"Content-Type: multipart/form-data; boundary=".$boundary."\r\n");
fwrite($fp,"Content-length:".strlen($postStr)."\r\n\r\n");
fwrite($fp,$postStr);
while (!feof($fp)){
     echo fgets($fp, 128);
}
fclose($fp);

print_r($_FILES);
Copy after login

1 楼 pz9042 2011-10-24  
我想问下,curl可以上传文件吗,依 你的代码,在指定url打印$_FILES,确实有信息,但,我在所谓的临时文件夹里根本没找到文件,更无法上传文件,楼主,希望你贴出主要的代码,你现在的代码,只不过是填写了信息,根本没有上传的代码
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template