欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

PHP如何發(fā)起HTTP請(qǐng)求

PHP如何發(fā)起HTTP請(qǐng)求?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

我們提供的服務(wù)有:成都網(wǎng)站制作、成都做網(wǎng)站、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、龍川ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的龍川網(wǎng)站制作公司

http請(qǐng)求是指從客戶端到服務(wù)器端的請(qǐng)求消息。包括:消息首行中,對(duì)資源的請(qǐng)求方法、資源的標(biāo)識(shí)符及使用的協(xié)議。從客戶端到服務(wù)器端的請(qǐng)求消息包括,消息首行中,對(duì)資源的請(qǐng)求方法、資源的標(biāo)識(shí)符及使用的協(xié)議。考慮到局限性更大的HTTP/0.9的向后兼容問(wèn)題,有兩種合法的HTTP請(qǐng)求格式。

PHP發(fā)起HTTP請(qǐng)求方式有:

  • curl仍然是最好的HTTP庫(kù),沒(méi)有之一。 可以解決任何復(fù)雜的應(yīng)用場(chǎng)景中的HTTP 請(qǐng)求;

  • 文件流式的HTTP請(qǐng)求比較適合處理簡(jiǎn)單的HTTP POST/GET請(qǐng)求,但不適用于復(fù)雜的HTTP請(qǐng)求;

  • PECL_HTTP擴(kuò)展寫代碼更加簡(jiǎn)潔,省事, 但成熟度不好,編程接口不統(tǒng)一,文檔和實(shí)例匱乏。

1、file_get_contents發(fā)送get請(qǐng)求

<?php
/**
 * 發(fā)送post請(qǐng)求
 * @param string $url 請(qǐng)求地址
 * @param array $post_data post鍵值對(duì)數(shù)據(jù)
 * @return string
 */
function send_post($url, $post_data) {
    $postdata = http_build_query($post_data);
    $options = array(
        'http' => array(
            'method' => 'POST',
            'header' => 'Content-type:application/x-www-form-urlencoded',
            'content' => $postdata,
            'timeout' => 15 * 60 // 超時(shí)時(shí)間(單位:s)
        )
    );
    $context = stream_context_create($options);
    $result = file_get_contents($url, false, $context);
    return $result;
}
$post_data = array(
'username' => 'abcdef',
'password' => '123456'
);
send_post('http://xxx.com', $post_data);

2、通過(guò)CURL發(fā)送get請(qǐng)求

<?php
$ch=curl_init('http://www.xxx.com/xx.html');
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_BINARYTRANSFER,true);
$output=curl_exec($ch);
$fh=fopen("out.html",'w');
fwrite($fh,$output);
fclose($fh);

3、通過(guò)fsocket發(fā)送get請(qǐng)求

/**
 * Socket版本
 * 使用方法:
 * $post_string = "app=socket&amp;version=beta";
 * request_by_socket('blog.snsgou.com', '/restServer.php', $post_string);
 */
function request_by_socket($remote_server,$remote_path,$post_string,$port = 80,$timeout = 30) {
$socket = fsockopen($remote_server, $port, $errno, $errstr, $timeout);
if (!$socket) die("$errstr($errno)");
fwrite($socket, "POST $remote_path HTTP/1.0");
fwrite($socket, "User-Agent: Socket Example");
fwrite($socket, "HOST: $remote_server");
fwrite($socket, "Content-type: application/x-www-form-urlencoded");
fwrite($socket, "Content-length: " . (strlen($post_string) + 8) . "");
fwrite($socket, "Accept:*/*");
fwrite($socket, "");
fwrite($socket, "mypost=$post_string");
fwrite($socket, "");
$header = "";
while ($str = trim(fgets($socket, 4096))) {
$header .= $str;
}
$data = "";
while (!feof($socket)) {
$data .= fgets($socket, 4096);
}
return $data;
}

關(guān)于PHP如何發(fā)起HTTP請(qǐng)求問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

分享名稱:PHP如何發(fā)起HTTP請(qǐng)求
文章源于:http://www.chinadenli.net/article44/ipheee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)建站公司手機(jī)網(wǎng)站建設(shè)微信小程序品牌網(wǎng)站建設(shè)域名注冊(cè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司