PHP POST CURL上传图片
来源:互联网 发布:怎么获取数据库的值 编辑:程序博客网 时间:2024/04/30 10:04
<pre name="code" class="php">function _curl_multipart_post($url, $post_data, $file_fields = array(), $timeout=30) { $result = array('errno' => 0, 'errmsg' => '', 'result' => ''); $ch = curl_init();//set various curl options first// set url to post tocurl_setopt($ch, CURLOPT_URL, $url);// return into a variable rather than displaying itcurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//set curl function timeout to $timeoutcurl_setopt($ch, CURLOPT_TIMEOUT, $timeout); curl_setopt($ch, CURLOPT_VERBOSE, false);//set method to postcurl_setopt($ch, CURLOPT_POST, true);// disable Expect header// hack to make it working$headers = array("Expect: ");curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);// initialize result post array$result_post = array();//generate post string$post_array = array();$post_strings = array();if (!is_array($post_data)) { $result['errno'] = 5; $result['errmsg'] = 'Params error.'; return json_encode($result);// return false;}foreach($post_data as $key=>$value) {$post_array[$key] = $value;$post_strings[] = urlencode($key)."=".urlencode($value);}$post_string = implode("&", $post_strings);// set post string // curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);// set multipart form data - file array field-value pairsif (!empty($file_fields)) {foreach($file_fields as $key => $value) {if (strpos(PHP_OS, "WIN") !== false) { $value = str_replace("/", "\\", $value); // win hack }$file_fields[$key] = "@".$value;}}// set post data$result_post = array_merge($post_array, $file_fields);if(class_exists("CURLFile")){//zjb 修复新版本PHP引来的Bug$result_post['Filedata'] = new CURLFile($result_post['filepath']);}curl_setopt($ch, CURLOPT_POSTFIELDS, $result_post); // print_r($result_post);//and finally send curl request$output = curl_exec($ch); $result['result'] = $output; // print_r($result);if (curl_errno($ch)) { if (0) {echo "Error Occured in Curl\n";echo "Error number: " .curl_errno($ch) ."\n";echo "Error message: " .curl_error($ch)."\n";} $result['errno'] = curl_errno($ch); $result['errmsg'] = curl_error($ch);// return false;} else {// return $result;} curl_close($ch); return $result;}
0 0
- PHP POST CURL上传图片
- CURL POST请求上传图片
- PHP curl上传图片方
- PHP Curl post上传图片版本不兼容而引起服务器端接收不到图片问题。
- CURL模拟post上传图片到七牛云
- PHP curl 模拟POST 上传文件
- php curl post 上传文件流
- php 中使用cURL发送get/post请求,上传图片,批处理
- PHP使用CURL向服务器POST文本数据和上传图片的代码示例
- PHP Curl post上传图片版本不兼容而引起服务器端接收不到图片问题/考虑 PHP 5.0~5.6 各版本兼容性的 cURL 文件上传
- php模拟post上传图片
- cURL-GET/POST/上传
- curl post模拟上传提交图片大全 整理版本
- PHP CURL 模拟POST请求 提交数据或上传文件
- php curl 模拟post上传文件应用实例
- PHP利用CURL进行 POST上传最完整的代码
- php http模拟POST提交上传图片
- PHP CURL POST提交
- v4l2_open()浅析
- 热部署-如何利用 HotCode 提高开发效率
- 技术接受模型(TAM,Technology Acceptance Model)
- 生成汉子拼音首字母全部的
- 使用Loadrunner 调用Webservice接口测试优化总结
- PHP POST CURL上传图片
- [IOS开发教程] IOS中用NSJSONSerialization来实现对JSON格式的解析
- 基于Eclipse的Storm应用开发
- Android中Bitmap和Drawable详解
- Linux目录结构和常用命令
- Java 回调的概念
- 形成20位存储单元的物理地址
- Dreamweaver打开后无响应
- 欢迎使用CSDN-markdown编辑器