您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關怎么在php中使用curl模擬瀏覽器表單上傳文件,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
前言
在瀏覽器使用html中的input框我們可以實現文件的上傳,表單元素選用 <input type="file"> 控件,form 表單需要設置 enctype="multipart/form-data" 屬性。比如:
<body> <form action="UploadFile.php" method="post" enctype="multipart/form-data"> <input type="file" name="fileUpload" /> <input type="submit" value="上傳文件" /> </form> </body>
總有一些時候,我們需要在后臺直接上傳文件而不是用瀏覽器進行前端上傳,這時候php的curl就提供了一些參數可以實現直接通過php后臺上傳文件。
php使用curl模擬上傳文件
curl上傳文件的時候,最重要的是一個“ @”符號的應用,加@符號curl就會把它當成是文件上傳處理。
具體代碼實例:
<?php header('Content-type:text/html; charset=utf-8'); //聲明編碼 $ch = curl_init(); $url = 'https://cache.yisu.com/upload/information/20201209/266/37253'); 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);
上述代碼實例中的url是處理文件上傳的具體的接口,可以直接使用$_FILES來獲取上傳的臨時文件相關信息,打印出$_FILES如下,其中數組的鍵“Filedata”名可以在傳遞參數的時候自己指定:
Array ( [Filedata] => Array ( [name] => 11.png [type] => application/octet-stream [tmp_name] => /private/var/tmp/php936cex [error] => 0 [size] => 36663 ) )
關于怎么在php中使用curl模擬瀏覽器表單上傳文件就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。