电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

PHP輸入流php://input

瀏覽:142日期:2022-09-12 13:55:23

對于php://input介紹,PHP官方手冊文檔有一段話對它進行了很明確地概述。

“php://input allows you to read raw POST data. It is a less memory intensive alternative to$HTTP_RAW_POST_DATA and does not need any special php.ini directives. php://input is not available with enctype=”multipart/form-data”.

翻譯過來,是這樣:“php://input可以讀取沒有處理過的POST數據。相較于$HTTP_RAW_POST_DATA而言,它給內存帶來的壓力較小,并且不需要特 殊的php.ini設置。php://input不能用于enctype=multipart/form-data”

總結如下:

Coentent-Type僅在取值為application/x-www-data-urlencoded和multipart/form-data兩種情況下,PHP才會將http請求數據包中相應的數據填入全局變量$_POSTPHP不能識別的Content-Type類型的時候,會將http請求包中相應的數據填入變量$HTTP_RAW_POST_DATA只有Coentent-Type為multipart/form-data的時候,PHP不會將http請求數據包中的相應數據填入php://input,否則其它情況都會。填入的長度,由Coentent-Length指定。只有Content-Type為application/x-www-data-urlencoded時,php://input數據才跟$_POST數據相一致。php://input數據總是跟$HTTP_RAW_POST_DATA相同,但是php://input比$HTTP_RAW_POST_DATA更湊效,且不需要特殊設置php.iniPHP會將PATH字段的query_path部分,填入全局變量$_GET。通常情況下,GET方法提交的http請求,body為空。

總結起來就是,在用$_POST獲取不到由APP或者一些接口的回調數據時,就用php://input試試

Example1: 接受xml數據

//發送xml數據$xml = ’<xml>xmldata</xml>’;//要發送的xml $url = ’http://localhost/test/getXML.php’;//接收XML地址 $header = ’Content-type: text/xml’;//定義content-type為xml $ch = curl_init(); //初始化curl curl_setopt($ch, CURLOPT_URL, $url);//設置鏈接 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//設置是否返回信息 curl_setopt($ch, CURLOPT_HTTPHEADER, $header);//設置HTTP頭 curl_setopt($ch, CURLOPT_POST, 1);//設置為POST方式 curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);//POST數據 $response = curl_exec($ch);//接收返回信息 if(curl_errno($ch)){//出錯則顯示錯誤信息 print curl_error($ch); } curl_close($ch); //關閉curl鏈接 echo $response;//顯示返回信息 // php用file_get_contents('php://input')或者$HTTP_RAW_POST_DATA可以接收xml數據$xmldata = file_get_contents('php://input'); $data = (array)simplexml_load_string($xmldata);

Example2: 手機上傳圖片到服務器的小程序

發送

//@file phpinput_post.php $data=file_get_contents(’btn.png’); $http_entity_body = $data; $http_entity_type = ’application/x-www-form-urlencoded’; $http_entity_length = strlen($http_entity_body); $host = ’127.0.0.1’; $port = 80; $path = ’/image.php’; $fp = fsockopen($host, $port, $error_no, $error_desc, 30); if ($fp){ fputs($fp, 'POST {$path} HTTP/1.1rn'); fputs($fp, 'Host: {$host}rn'); fputs($fp, 'Content-Type: {$http_entity_type}rn'); fputs($fp, 'Content-Length: {$http_entity_length}rn'); fputs($fp, 'Connection: closernrn'); fputs($fp, $http_entity_body . 'rnrn'); while (!feof($fp)) { $d .= fgets($fp, 4096); } fclose($fp); echo $d; }

接收

/** *Recieve image data **/error_reporting(E_ALL);function get_contents() { $xmlstr= file_get_contents('php://input'); $filename=file_put_contentsxmltime().’.png’; if(($filename,$str)){ echo ’success’; }else{ echo ’failed’; } }get_contents();

Example3:獲取HTTP請求原文

/** * 獲取HTTP請求原文 * @return string */function get_http_raw(){ $raw = ’’; // (1) 請求行 $raw .= $_SERVER[’REQUEST_METHOD’] . ’ ’ . $_SERVER[’REQUEST_URI’] . ’ ’ . $_SERVER[’SERVER_PROTOCOL’] . 'rn'; // (2) 請求Headers foreach ($_SERVER as $key => $value) { if (substr($key , 0 , 5) === ’HTTP_’) { $key = substr($key , 5); $key = str_replace(’_’ , ’-’ , $key); $raw .= $key . ’: ’ . $value . 'rn'; } } // (3) 空行 $raw .= 'rn'; // (4) 請求Body $raw .= file_get_contents(’php://input’); return $raw;}

標簽: PHP
相關文章:
主站蜘蛛池模板: 微水泥_硅藻泥_艺术涂料_艺术漆_艺术漆加盟-青岛泥之韵环保壁材 武汉EPS线条_EPS装饰线条_EPS构件_湖北博欧EPS线条厂家 | 金属清洗剂,防锈油,切削液,磨削液-青岛朗力防锈材料有限公司 | 活动策划,舞台搭建,活动策划公司-首选美湖上海活动策划公司 | 江苏大隆凯科技有限公司| 航空障碍灯_高中低光强航空障碍灯_民航许可认证航空警示灯厂家-东莞市天翔航天科技有限公司 | 幂简集成 - 品种超全的API接口平台, 一站搜索、试用、集成国内外API接口 | 北京易通慧公司从事北京网站优化,北京网络推广、网站建设一站式服务商-北京网站优化公司 | 天津次氯酸钠酸钙溶液-天津氢氧化钠厂家-天津市辅仁化工有限公司 | 沧州友城管业有限公司-内外涂塑钢管-大口径螺旋钢管-涂塑螺旋管-保温钢管生产厂家 | 消泡剂_水处理消泡剂_切削液消泡剂_涂料消泡剂_有机硅消泡剂_广州中万新材料生产厂家 | 干式变压器厂_干式变压器厂家_scb11/scb13/scb10/scb14/scb18干式变压器生产厂家-山东科锐变压器有限公司 | 砍排机-锯骨机-冻肉切丁机-熟肉切片机-预制菜生产线一站式服务厂商 - 广州市祥九瑞盈机械设备有限公司 | 猪I型/II型胶原-五克隆合剂-细胞冻存培养基-北京博蕾德科技发展有限公司 | 上海租奔驰_上海租商务车_上海租车网-矢昂汽车服务公司 | 骨密度仪-骨密度测定仪-超声骨密度仪-骨龄测定仪-天津开发区圣鸿医疗器械有限公司 | 昆明网络公司|云南网络公司|昆明网站建设公司|昆明网页设计|云南网站制作|新媒体运营公司|APP开发|小程序研发|尽在昆明奥远科技有限公司 | 鲸鱼视觉 -数字展厅多媒体互动展示制作公司 | 灌木树苗-绿化苗木-常绿乔木-价格/批发/基地 - 四川成都途美园林 | 风化石头制砂机_方解石制砂机_瓷砖石子制砂机_华盛铭厂家 | 税筹星_灵活用工平台_企业财务顾问_财税法薪综合服务平台 | 山东锐智科电检测仪器有限公司_超声波测厚仪,涂层测厚仪,里氏硬度计,电火花检漏仪,地下管线探测仪 | 裹包机|裹膜机|缠膜机|绕膜机-上海晏陵智能设备有限公司 | 超声波气象站_防爆气象站_空气质量监测站_负氧离子检测仪-风途物联网 | 中药二氧化硫测定仪,食品二氧化硫测定仪|俊腾百科 | 包装机_厂家_价格-山东包装机有限公司 | 法兰连接型电磁流量计-蒸汽孔板节流装置流量计-北京凯安达仪器仪表有限公司 | 橡胶电子拉力机-塑料-微电脑电子拉力试验机厂家-江苏天源 | 长沙中央空调维修,中央空调清洗维保,空气能热水工程,价格,公司就找维小保-湖南维小保环保科技有限公司 | cnc精密加工_数控机械加工_非标平键定制生产厂家_扬州沃佳机械有限公司 | LZ-373测厚仪-华瑞VOC气体检测仪-个人有毒气体检测仪-厂家-深圳市深博瑞仪器仪表有限公司 | 济南侦探调查-济南调查取证-山东私家侦探-山东白豹调查咨询公司 密集架|电动密集架|移动密集架|黑龙江档案密集架-大量现货厂家销售 | 德国UST优斯特氢气检漏仪-德国舒赐乙烷检测仪-北京泽钏 | nalgene洗瓶,nalgene量筒,nalgene窄口瓶,nalgene放水口大瓶,浙江省nalgene代理-杭州雷琪实验器材有限公司 | 卸料器-卸灰阀-卸料阀-瑞安市天蓝环保设备有限公司 | 嘉兴泰东园林景观工程有限公司_花箱护栏| 深圳品牌设计公司-LOGO设计公司-VI设计公司-未壳创意 | 百度网站优化,关键词排名,SEO优化-搜索引擎营销推广 | 帽子厂家_帽子工厂_帽子定做_义乌帽厂_帽厂_制帽厂_帽子厂_浙江高普制帽厂 | 连续油炸机,全自动油炸机,花生米油炸机-烟台茂源食品机械制造有限公司 | 超声波气象站_防爆气象站_空气质量监测站_负氧离子检测仪-风途物联网 | 便携式表面粗糙度仪-彩屏硬度计-分体式粗糙度仪-北京凯达科仪科技有限公司 |