Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1179272
  • 博文数量: 252
  • 博客积分: 5421
  • 博客等级: 大校
  • 技术积分: 2418
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-17 12:59
文章分类

全部博文(252)

文章存档

2017年(3)

2016年(18)

2015年(31)

2014年(18)

2013年(7)

2012年(8)

2011年(12)

2010年(30)

2009年(32)

2008年(57)

2007年(36)

分类: PHP

2014-01-14 15:51:08


  1. function uploadFile($strUrl, $strSrcFilePath, $arrPostParam, $arrCookie=array(), $strReferer='')
  2. {
  3.     $arrParam = array(
  4.         'object_file' => '@'.$strSrcFilePath,
  5.     );
  6.     $arrParam = array_merge($arrPostParam, $arrParam);
  7.     $ch = curl_init($strUrl);
  8.     curl_setopt($ch, CURLOPT_HEADER, 0);
  9.     curl_setopt($ch, CURLOPT_TIMEOUT, 5);
  10.     curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
  11.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  12.     curl_setopt($ch, CURLOPT_POST, true);
  13.     curl_setopt($ch, CURLOPT_POSTFIELDS, $arrParam);
  14.     curl_setopt($ch, CURLOPT_REFERER, $strReferer);
  15.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
  16.     curl_setopt($ch, CURLOPT_MAXREDIRS, 3);
  17.     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  18.     curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  19.     if ($arrCookie && is_array($arrCookie)) {
  20.         $cookie_str = '';
  21.         foreach($arrCookie as $key => $value) {
  22.             $cookie_str .= "$key=$value; ";
  23.         }
  24.         curl_setopt($ch, CURLOPT_COOKIE, $cookie_str);
  25.     }
  26.     $response = curl_exec($ch);
  27.     if (curl_errno($ch) != 0) {
  28.         return array('errno'=>1, 'errmsg'=>"upload $strSrcFilePath failed: ".curl_error($ch), 'data'=>'');
  29.     }
  30.     curl_close($ch);
  31.     if (!$response) {
  32.         return array('errno'=>1, 'errmsg'=>"upload $strSrcFilePath failed: response is empty", 'data'=>'');
  33.     }
  34.     return array('errno'=>1, 'errmsg'=>'ok', 'data'=>$response);
  35. }

阅读(3023) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~