主頁 > 知識庫 > PHP實現(xiàn)多圖上傳和單圖上傳功能

PHP實現(xiàn)多圖上傳和單圖上傳功能

熱門標簽:沈陽人工智能電銷機器人公司 拉薩打電話機器人 電銷機器人-快迭智能 寶安400電話辦理 哈爾濱400電話辦理到易號網(wǎng) h5 地圖標注 智能外呼電銷系統(tǒng) 高識別電銷機器人 合肥外呼系統(tǒng)app

下面一段代碼給大家介紹php實現(xiàn)單圖上傳和多圖上傳的功能,具體代碼如下所示:

/**
   * 多選圖片上傳
   * 
   * @version v1.0.0
   * @author 
   * @since  17-11-24
   */
  public function upload()
  {
    $file = $_FILES['file'];
    empty($file)  $this->response(201,'請選擇要上傳的文件');
    unset($_FILES['file']);
    $count = count($file['name']);       // 上傳圖片的數(shù)量
    $count > 10  $this->response(203,'批量上傳圖片一次最多上傳10張圖片');
    $tmpFile  = [];
    $returnData = [];
    for($i=0;$i$count;$i++)          // 循環(huán)處理圖片
    {
      $tmpFile['name']   = $file['name'][$i];
      $tmpFile['type']   = $file['type'][$i];
      $tmpFile['tmp_name'] = $file['tmp_name'][$i];
      $tmpFile['error']  = $file['error'][$i];
      $tmpFile['size']   = $file['size'][$i];
      $_FILES['file_'.$i] = $tmpFile;
      // 判斷是否是允許的圖片類型
      $ext = substr($_FILES['file_'.$i]['name'],strrpos($_FILES['file_'.$i]['name'],'.')+1); // 上傳文件后綴
      stripos('jpeg|png|bmp|jpg',$ext) === FALSE  $this->response(210,'圖片格式支持 JPEG、PNG、BMP格式圖片');
      $data = $this->uploadOne('file_'.$i,'jpeg|png|bmp|jpg');
      if($data['status'] == 1)
      {
        $this->response(500,'第'.($i+1).'張圖片上傳失敗,'.$data['msg']);
      }
      $returnData[$i]['url']   = $data['url'];   // 圖片路徑
      $returnData[$i]['old_name'] = substr($tmpFile['name'],0,strrpos($tmpFile['name'], '.')); // 圖片原名稱
    }
    $this->response(200,'successful',$returnData);
  }
   /**
   * 單文件上傳
   * @version v1.0.0
   * @author  
   * @since  17-11-24
   * @param  $file   上傳表單name名稱
   * @param  $type   上傳類型
   * @param  $maxSize 上傳文件限制大小(默認 10M)
   */
  private function uploadOne($filename = 'file',$type = 'jpeg|png|bmp|jpg',$maxSize = 10240)
  {
    list($width,$height)    = getimagesize($_FILES[$filename]['tmp_name']); // 獲取圖片的寬和高
    list($usec, $sec) = explode(" ", microtime());
    $time = $sec.substr($usec,2);                         // 秒數(shù)+微秒數(shù)
    $ext = substr($_FILES[$filename]['name'],strrpos($_FILES[$filename]['name'],'.')+1); // 上傳文件后綴
    $name   = $time.'-'.$width.'*'.$height.'.'.$ext;
    $filePath = $_FILES[$filename]['tmp_name'];
    $type   = $_FILES[$filename]['type'];
    $this->load->library('Qiniu');
    $returnData['url'] = $this->qiniu->upload($name,$filePath,$type);
    $returnData['status'] = 0;
    return $returnData;
  }

總結(jié)

以上所述是小編給大家介紹的PHP實現(xiàn)多圖上傳和單圖上傳功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

您可能感興趣的文章:
  • PHP+Ajax+JS實現(xiàn)多圖上傳
  • 簡單的PHP多圖上傳小程序代碼
  • php+html5使用FormData對象提交表單及上傳圖片的方法
  • 簡單PHP上傳圖片、刪除圖片實現(xiàn)代碼
  • 簡單的PHP圖片上傳程序

標簽:巴中 張家口 林芝 山東 威海 梅州 泰州 成都

巨人網(wǎng)絡(luò)通訊聲明:本文標題《PHP實現(xiàn)多圖上傳和單圖上傳功能》,本文關(guān)鍵詞  PHP,實現(xiàn),多圖,上傳,和,單圖,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP實現(xiàn)多圖上傳和單圖上傳功能》相關(guān)的同類信息!
  • 本頁收集關(guān)于PHP實現(xiàn)多圖上傳和單圖上傳功能的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章