關於利用php的file_get_contents 函數實現模擬get和post提交

最近由於要用到一些模擬提交get和post請求的功能.之前通常用3種方式實現javascript

一、使用fsocket函數,經過socket連接 構造http頭的方式實現.比較原始,http頭的構造每每須要寫大段的字符串代碼.php

二、使用一些開源的http模擬類淚如 snoopy等java

三、利用php的curl擴展. json

後兩種方法都會帶來額外的系統開銷.使用curl則還有一堆複雜的參數須要設定.app

其實從php5.0之後開始file_get_contents函數就增長了context的支持.curl

那麼構造一個模擬的http請求,就很是簡單了.socket

$context['http'] = array(   函數

            'method' => 'POST',oop

            'header' => "Accept:application/json, text/javascript, */*; q=0.01\r\n".post

"Accept-Charset:GBK,utf-8;q=0.7,*;q=0.3\r\n".

                               ......

            'content'=>''

            'timeout'=>5

           );  

          file_get_contents($url,task, false, stream_context_create($context))

那麼一個簡單的http post請求就完成了

相關文章
相關標籤/搜索