php curl 上传文件代码实例

   这篇文章主要介绍了php curl 上传文件代码实例,本文给出了两种实现方法,并分别给出了实现代码,需要的朋友可以参考下

  假设server端上传文件处理脚本upload.php:

   代码如下:

  

  print_r($_POST);

  print_r($_FILES);

  1、使用 CURL 默认的方法

  复制代码 代码如下:

  //如果php文件是utf8编码,系统是GBK编码,那么就需要转下编码,要不然Php在系统中找不到这个文件

  $file = realpath(mb_convert_encoding('测试图片.JPG','GBK','utf8'));

  $file = realpath('temp.jpg'); //要上传的文件

  $fields['f'] = '@'.$file; // 前面加@符表示上传图片

  $ch =curl_init();

  curl_setopt($ch,CURLOPT_URL,'http://localhost/upload.php');

  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 =<<< 'TEXT'

  这里是文件内容,也可以是图片二进制,图片需要修改上传文件类型

  TEXT;

  $varname = 'my';//上传到$_FILES数组中的 key

  $name = '3.txt';//文件名

  $type = 'text/plain';//文件类型

  $key = "$varname"; filename="$namernContent-Type: $typern";

  $fields[$key] = $contents;

  $ch =curl_init();

  curl_setopt($ch,CURLOPT_URL,'http://localhost/upload.php');

  curl_setopt($ch,CURLOPT_POST,true);

  curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);

  curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

  $content = curl_exec($ch);

  echo $content;

时间: 2024-10-29 02:38:19

php curl 上传文件代码实例的相关文章

php curl 上传文件代码实例_php技巧

假设server端上传文件处理脚本upload.php: 复制代码 代码如下: <?php    print_r($_POST);  print_r($_FILES);  1.使用 CURL 默认的方法 复制代码 代码如下: //如果php文件是utf8编码,系统是GBK编码,那么就需要转下编码,要不然Php在系统中找不到这个文件    $file = realpath(mb_convert_encoding('测试图片.JPG','GBK','utf8'));    $file = realp

php上传文件代码实例

 代码如下 复制代码 <html> <head> <title>文件上传</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head> <body bgcolor="#FFFFFF" text="#000000" leftmargin=&quo

PHP中codeigniter文件上传类代码实例

  codeigniter文件上传类代码实例 文件上传类 CodeIgniter 的文件上传类允许文件被上传.您可以设置指定上传某类型的文件及指定大小的文件. 处理过程 上传文件普遍的过程: 一个上传文件用的表单,允许用户选择一个文件并上传它. 当这个表单被提交,该文件被上传到指定的目录. 同时,该文件将被验证是否符合您设定的要求. 一旦文件上传成功,还要返回一个上传成功的确认窗口. 这里有一个简短的教程来显示这个过程.此后你将会找到相关的参考信息. 创建上传表单 运用文本编辑器创建一个名为up

HttpClient通过Post上传文件的实例代码

在之前一段的项目中,使用Java模仿Http Post方式发送参数以及文件,单纯的传递参数或者文件可以使用URLConnection进行相应的处理. 但是项目中涉及到既要传递普通参数,也要传递多个文件(不是单纯的传递XML文件).在网上寻找之后,发现是使用HttClient来进行响应的操作,起初尝试多次依然不能传递参数和传递文件,后来发现时因为当使用HttpClient时,不能使用request.getParameter()对普通参数进行获取,而要在服务器端使用Upload来进行操作. Http

PHP中TP5 上传文件的实例详解

php 文件上传 效果图: 实现代码: application\index\controller\Index.php <?php namespace app\index\controller; use think\Controller; use think\Request; class Index extends Controller { //文件上传表单 public function index() { return $this->fetch(); } //文件上传提交 public fu

curl-php cURL 上传文件失败

问题描述 php cURL 上传文件失败 curlPost.php <?php $post = array( 'name' => 'wyjie', 'img' => '@D:/debug.exe' ); //cURL发送post请求 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://localhost/demo/demo/curl/01.php'); curl_setopt($ch, CURLOPT_RETURNTRANSF

php上传文件代码

原文地址:php上传文件代码作者:风云之士  function Upload($uploaddir)      {         $tmp_name =$_FILES['file']['tmp_name'];  // 文件上传后得临时文件名          $name     =$_FILES['file']['name'];     // 被上传文件的名称         $size     =$_FILES['file']['size'];    //  被上传文件的大小        

UpdatePanel上使用FileUpload上传文件代码

updatepanel上使用fileupload上传文件代码 @page language="c#" masterpagefile="~/evamanager.master" autoeventwireup="true" codefile="hv_excel.asp教程x.cs" inherits="hv_excel" title="untitled page" %> <as

php中通过Ajax如何实现异步文件上传的代码实例_php技巧

1:取得file对象 2:读取2进制数据 3:模拟http请求,把数据发送出去(这里通常比较麻烦) 在forefox下使用 xmlhttprequest 对象的 sendasbinary 方法发送数据: 4:完美实现 遇到的问题 目前仅有 firefox 可以正确上传文件.(chrome也可以采google.gears上传) 对于从firefox和chrome下读取到的文件数据好像不一样(不知道是否是调试工具的原因) chrome以及其他高级浏览器没有 sendasbinary 方法 只能使用