亚洲欧美日韩综合系列在线_91精品人妻一区二区_欧美大肥婆一级特大AA片_九色91视频免费观看_亚洲综合国产精品_av中文字幕在线不卡_久久精品色综合网_看黄色视频的软件_无卡无码高清中文字幕码2024_亚洲欧美日韩天堂网

php使用curl模擬瀏覽器表單上傳文件以及圖片的方法

來源:不言 發(fā)布時(shí)間:2018-11-14 09:42:29 閱讀量:789

本篇文章給大家?guī)淼膬?nèi)容是關(guān)于php使用curl模擬瀏覽器表單上傳文件以及圖片的方法,有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對你有所幫助。

前言

在瀏覽器使用html中的input框我們可以實(shí)現(xiàn)文件的上傳,表單元素選用 <input type="file"> 控件,form 表單需要設(shè)置 enctype="multipart/form-data" 屬性。比如:

1

2

3

4

5

6

7

8

9

10

11

<body>

 

   <form action="UploadFile.php" method="post" enctype="multipart/form-data">

 

   <input type="file" name="fileUpload" />

 

   <input type="submit" value="上傳文件" />

 

   </form>

 

</body>

總有一些時(shí)候,我們需要在后臺(tái)直接上傳文件而不是用瀏覽器進(jìn)行前端上傳,這時(shí)候php的curl就提供了一些參數(shù)可以實(shí)現(xiàn)直接通過php后臺(tái)上傳文件。

php使用curl模擬上傳文件

curl上傳文件的時(shí)候,最重要的是一個(gè)“ @”符號的應(yīng)用,加@符號curl就會(huì)把它當(dāng)成是文件上傳處理。

具體代碼實(shí)例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<?php

   header('Content-type:text/html; charset=utf-8');  //聲明編碼

   $ch = curl_init();

   $url = 'https://xxx.com/api/mobile/auto_upload.php?uid=9705459';

    

   //post數(shù)據(jù),使用@符號,curl就會(huì)認(rèn)為是有文件上傳

   $curlPost = array('Filedata'=>'@/Users/finup/Documents/11.png');

    

    

   curl_setopt($ch, CURLOPT_URL, $url);

   curl_setopt($ch, CURLOPT_HEADER, 1);

   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

   curl_setopt($ch, CURLOPT_POST, 1); //POST提交

   curl_setopt($ch, CURLOPT_POSTFIELDS,$curlPost);

   $data =curl_exec($ch);

   curl_close($ch);

   echo '<pre>';

   var_dump($data);

上述代碼實(shí)例中的url是處理文件上傳的具體的接口,可以直接使用$_FILES來獲取上傳的臨時(shí)文件相關(guān)信息,打印出$_FILES如下,其中數(shù)組的鍵“Filedata”名可以在傳遞參數(shù)的時(shí)候自己指定:

1

2

3

4

5

6

7

8

9

10

11

12

Array

(

   [Filedata] => Array

       (

           [name] => 11.png

           [type] => application/octet-stream

           [tmp_name] => /private/var/tmp/php936cex

           [error] => 0

           [size] => 36663

       )

 

)



標(biāo)簽: PHP
分享:
評論:
你還沒有登錄,請先