httpphp請求
1. php哪些方式發送http請求
第一種實現方式:實用socket編程,通常我們實用fsockopen這個函數來創建一個socket連接,用fputs來發送一個請求
第二種實現方式:實用php的curl擴展,我們使用curl_init()來初始化一個連接,然後設置一堆的curl_setopt()的東西來設置url,post的數據等等,最後我們使用curl_exec()來實現請求。
第三種方式就是: 實用file_get_contents函數,其實我們平時抓取一個網頁可能只實用它的第一個參數,其實它的第三個參數就有數據了
2. php如何通過get方法發送http請求,並且得到返回的參數
這是一個跨域訪問問題,以前這種問題是比較復雜的。不過隨著XML josn等等數據結構的應用
現在還是很好解決的 而且你的要求也不高 只是一個返回值的話 都用不到數據結構了 直接頁面輸出就好了
我寫了兩個簡單的文件給你 裡面的域名和文件名參數 你都可以自己調整 我測試是沒問題的
//test.php
<?php
$ch = curl_init();
$str ='http://127.0.0.1/form.php?id=10';
curl_setopt($ch, CURLOPT_URL, $str);
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );
$output = curl_exec($ch);
var_mp( $output );
?>
//頁面輸出結果 string(2) "10"
//form.php 文件內容如下
<?php
$id = $_GET['id'];
echo $id;
?>
3. php 如何發送http請求和實現https介面
具體代碼如下:
<?php
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, '');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
echo $file_contents;
?>
PHP 獨特抄的語法混合了C、Java、Perl以及PHP自創的語法。
它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標准通用標記語言下的一個應用)文檔中去執行,
執行效率比完全生成HTML標記的CGI要高許多;
PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。
4. 怎麼用php發送http請求
var _loader:URLloader;
_loader = new URLLoader();
//建立事件的偵聽
configureListeners(_loader);
//建立urlloader的數據
var loaderData:URLVariables = new URLVariables();
loaderData.userName = "kidliu";
loaderData.passWord = "123456";
//建立請求地址
var url:String = "localhost/login.php";
var request:URLRequest = new URLRequest(url);
//把數據和請求邦定
request.data = loaderData;
//設定請求的方式
request.method = URLRequestMethod.POST;
try {
_loader.load(request);
} catch (error:Error) {
trace(error);
}
private function configureListeners(dispatcher:IEventDispatcher):void {
//載入完成事件;
dispatcher.addEventListener(Event.COMPLETE, loaderHandler);
//開始訪問事件;
dispatcher.addEventListener(Event.OPEN, loaderHandler);
//載入進度事件;
dispatcher.addEventListener(ProgressEvent.PROGRESS, loaderHandler);
//跨域訪問安全策略事件;
dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler);
//Http狀態事件;
dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, loaderHandler);
//訪問出錯事件;
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, loaderHandler);
}
private function loaderHandler(event:*):void
{
switch(event.type) {
case Event.COMPLETE:
trace("成功: " + _loader.data);
break;
case Event.OPEN:
trace("open: " + event);
break;
case ProgressEvent.PROGRESS:
trace("progress: " + event);
break;
case SecurityErrorEvent.SECURITY_ERROR:
trace("securityError: " + event);
5. php怎麼響應客戶端發送http請求
獲取請求代碼如下:
#測試網址: http://localhost/blog/testurl.php?id=5
//獲取域名或主機地址
echo $_SERVER['HTTP_HOST']."
"; #localhost
//獲取網頁地址
echo $_SERVER['PHP_SELF']."
"; #/blog/testurl.php
//獲取網址參數
echo $_SERVER["QUERY_STRING"]."
"; #id=5
//獲取用戶代理
echo $_SERVER['HTTP_REFERER']."
";
//獲取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
#http://localhost/blog/testurl.php?id=5
//包含埠號的完整url
echo
http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5
//只取路徑
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);
#http://localhost/blog
if (in_array("Mark", $people))
{
echo "匹配已找到";
}
else
{
echo "匹配未找到";
}
6. 幾種PHP發送HTTP請求的方式分享
stream_context_create 作用:創建並返回一個文本數據流並應用各種選項,可用於 fopen(), file_get_contents() 等過程的超時設置、代理伺服器、請求方式、頭信息設置的特殊過程。
7. 怎麼用PHP發送HTTP請求
var_loader:URLloader;
_loader=newURLLoader();
//建立事件的偵聽
configureListeners(_loader);
//建立urlloader的數據
varloaderData:URLVariables=newURLVariables();
loaderData.userName="kidliu";
loaderData.passWord="123456";
//建立請求地址
varurl:String="localhost/login.php";
varrequest:URLRequest=newURLRequest(url);
//把數據和請求邦定
request.data=loaderData;
//設定請求的方式
request.method=URLRequestMethod.POST;
try{
_loader.load(request);
}catch(error:Error){
trace(error);
}
(dispatcher:IEventDispatcher):void{
//載入完成事件;
dispatcher.addEventListener(Event.COMPLETE,loaderHandler);
//開始訪問事件;
dispatcher.addEventListener(Event.OPEN,loaderHandler);
//載入進度事件;
dispatcher.addEventListener(ProgressEvent.PROGRESS,loaderHandler);
//跨域訪問安全策略事件;
dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR,loaderHandler);
//Http狀態事件;
dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS,loaderHandler);
//訪問出錯事件;
dispatcher.addEventListener(IOErrorEvent.IO_ERROR,loaderHandler);
}
privatefunctionloaderHandler(event:*):void
{
switch(event.type){
caseEvent.COMPLETE:
trace("成功:"+_loader.data);
break;
caseEvent.OPEN:
trace("open:"+event);
break;
caseProgressEvent.PROGRESS:
trace("progress:"+event);
break;
caseSecurityErrorEvent.SECURITY_ERROR:
trace("securityError:"+event);
8. php 如何發送http請求!
第一種實現方式:實用socket編程,通常我們實用fsockopen這個函數來創建一個socket連接,用fputs來發送一個請求版
第二種實權現方式:實用php的curl擴展,我們使用curl_init()來初始化一個連接,然後設置一堆的curl_setopt()的東西來設置url,post的數據等等,最後我們使用curl_exec()來實現請求。
第三種方式就是: 實用file_get_contents函數,其實我們平時抓取一個網頁可能只實用它的第一個參數,其實它的第三個參數就有數據了
9. PHP中如何發送HTTP請求
看起來你的代碼正確,不知道你有什麼問題。
這個方法不錯,但是最好用一個封裝好的類。
比如http_client之類的,網上這樣的類挺多了,你可以搜索一下。
當然直接用socket也可以。