国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP接收App端發送文件流的方法

2024-05-04 23:50:23
字體:
來源:轉載
供稿:網友

本文實例講述了PHP接收App端發送文件流的方法。分享給大家供大家參考,具體如下:

解決思路:

1. 客戶端多張圖片進行循環上傳,同時附帶參數,并用一定規則組合生產數據流(圖片數據放在最后)
2. 使用數據流進行傳輸,php服務端用file_get_content('php://input')進行接收
3. 傳輸完畢后將數據流按照規則分割,取出最后的圖片數據,并寫入圖片文件

示例代碼:

以下代碼是發送單張圖片和參數PHP文件,多張圖片可循環調用。

<?php/* curl_post.php */// 設置請求的POST地址,必須是包含網址的域名,不能是相對路徑$url = 'http://www.xxx.com/post.php';$pic_data = file_get_contents('./me.jpg');$data = [  'username=chafang_'.rand(100, 999),  'password='.md5('123456'),  'pic=' => $pic_data, // 這里存放圖片數據];// 使用 '#####' 進行分割數組$strData = implode('#####', $data);$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url);//設置頭文件的信息作為數據流輸出curl_setopt($curl, CURLOPT_HEADER, 0);//設置獲取的信息以文件流的形式返回,而不是直接輸出。curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//設置post方式提交curl_setopt($curl, CURLOPT_POST, 1);curl_setopt($curl, CURLOPT_POSTFIELDS, $strData);$data = curl_exec($curl);curl_close($curl);// 顯示post的返回值echo ($data);

接收curl請求的PHP文件,返回json格式

<?php/* post.php */$content = file_get_contents("php://input");$domain = 'http://www.xxx.com/';// 注意這里需要有寫權限$filename = 'update/'.time().'_'.rand(100000, 999999).'.jpg';$data = explode('#####', $content, 3);$count = count($data);$result = [];// 如果文件寫入成功if (file_put_contents($filename, $data[$count - 1])){  // 刪除數據中最后一個元素(就是圖片)  unset($data[$count - 1]);  foreach ($data as $val)  {    // 返回參數,且參數值不能存在 '=' 號    $tmp = explode('=', $val, 2);    $result[$tmp[0]] = $tmp[1];  }  // 組合圖片訪問地址  $result['pic'] = $domain.$filename;}echo json_encode($result);

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 内黄县| 茌平县| 新干县| 加查县| 安阳县| 镇雄县| 博客| 当雄县| 高邑县| 武汉市| 扬中市| 双柏县| 富川| 镇赉县| 电白县| 镇远县| 澎湖县| 察雅县| 谷城县| 彭山县| 普兰县| 靖西县| 鞍山市| 敦煌市| 微山县| 名山县| 新建县| 赞皇县| 灵武市| 明溪县| 扎囊县| 西宁市| 南宫市| 延安市| 思南县| 高邮市| 白朗县| 子长县| 绥德县| 潞西市| 施甸县|