方法有很多,其中有file_get_contents把數(shù)據(jù)讀到一個(gè)字符串中,還有一個(gè)是curl方式,兩種方式有所不同,查一下就知道區(qū)別了
成都創(chuàng)新互聯(lián)自2013年創(chuàng)立以來(lái),先為陽(yáng)江等服務(wù)建站,陽(yáng)江等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為陽(yáng)江企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
1、用file_get_contents 以get方式獲取內(nèi)容:
?php
$url = '' ;
$html = file_get_contents ( $url );
echo $html ;
?
2、用fopen打開(kāi)url,用get方式獲取
$fp = fopen ( $url , 'r' );
stream_get_meta_data( $fp );
while (! feof ( $fp )) {
$result .= fgets ( $fp , 1024);
}
echo "url body: $result" ;
fclose( $fp );
3、用file_get_contents 以post方式獲取內(nèi)容:
$data = array ( 'foo' = 'bar' );
$data = http_build_query($data);
$opts = array (
'http' = array (
'method' = 'POST' ,
'header' = "Content-type: application/x-www-form-urlencodedrn" . 'Content-Length: ' . strlen($data) . 'rn' , 'content' = $data ) ); $context = stream_context_create($opts); $html = file_get_contents( '' , false , $context); echo $html;
4、用fsockopen函數(shù)打開(kāi)url,以get方式獲取完整的數(shù)據(jù),包括header和body,fsockopen需要 PHP.ini 中 allow_url_fopen 選項(xiàng)開(kāi)啟
function get_url ( $url , $cookie =false)
{
$url = parse_url ( $url );
$query = $url [path]. '?' . $url [query];
echo 'Query:' . $query ;
$fp = fsockopen ( $url [host], $url [port]? $url [port]:80 , $errno , $errstr , 30);
if (! $fp ) {
return false;
} else {
$request = 'GET $query HTTP/1.1rn' ;
$request .= 'Host: $url[host]rn' ;
$request .= 'Connection: Closern' ;
if ( $cookie ) $request .= 'Cookie: $cookien' ;
$request .= 'rn' ;
fwrite( $fp , $request );
while (!@ feof ( $fp )) {
$result .= @ fgets ( $fp , 1024);
}
fclose( $fp );
return $result ;
}
}
//獲取url的html部分,去掉header
function GetUrlHTML( $url , $cookie =false)
{
$rowdata = get_url( $url , $cookie );
if ( $rowdata )
{
$body = stristr ( $rowdata , 'rnrn' );
$body = substr ( $body ,4, strlen ( $body ));
return $body ;
}
return false;
}
5、 用fsockopen函數(shù)打開(kāi)url,以POST方式獲取完整的數(shù)據(jù),包括header和body
function HTTP_Post( $URL , $data , $cookie , $referrer = '' )
{
// parsing the given URL
$URL_Info = parse_url ( $URL );
// Building referrer
if ( $referrer == '' ) // if not given use this script as referrer
$referrer = '111' ;
// making string from $data
foreach ( $data as $key = $value )
$values []= '$key=' .urlencode( $value );
$data_string =implode( '' , $values );
// Find out which port is needed – if not given use standard (=80)
if (!isset( $URL_Info [ 'port' ]))
$URL_Info [ 'port' ]=80;
// building POST-request:
$request .= "POST " . $URL_Info [ 'path' ]. " HTTP/1.1n" ; $request .= "Host: " . $URL_Info [ 'host' ]. "n" ; $request .= "Referer: $referern" ; $request .= "Content-type: application/x-www-form-urlencodedn" ; $request .= 'Content-length: ' . strlen ( $data_string ). "n" ; $request .= 'Connection: closen' ; $request .= 'Cookie: $cookien' ; $request .= 'n' ; $request .= $data_string . 'n' ; $fp = fsockopen ( $URL_Info [ 'host' ], $URL_Info [ 'port' ]); fputs ( $fp , $request ); while (! feof ( $fp )) { $result .= fgets ( $fp , 1024); } fclose( $fp ); return $result ;
}
6、 使用curl庫(kù),使用curl庫(kù)之前,可能需要查看一下php.ini是否已經(jīng)打開(kāi)了curl擴(kuò)展
$ch = curl_init();
$timeout = 5;
curl_setopt ( $ch , CURLOPT_URL, ‘http: //');
curl_setopt ( $ch , CURLOPT_RETURNTRANSFER, 1);
curl_setopt ( $ch , CURLOPT_CONNECTTIMEOUT, $timeout );
$file_contents = curl_exec( $ch );
curl_close( $ch );
echo $file_contents ;
以上就是php中,比較常用的6中遠(yuǎn)程請(qǐng)求方法,希望對(duì)php新人的學(xué)習(xí)、工作有一定的幫助。當(dāng)然遠(yuǎn)程請(qǐng)求的方法肯定不止題主上面為大家介紹的這6中,如果你還有更好的方法,歡迎補(bǔ)充分享。軟件開(kāi)發(fā)的學(xué)習(xí),就是一個(gè)分享式的學(xué)習(xí),讓我們一起在分享學(xué)習(xí)中,共進(jìn)步。
最簡(jiǎn)單的話就是使用session保存,其次可以把數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)里,或者文件里,然后在register.php里查詢。
原生session使用方法
session_start();
//賦值
$_SESSION["Session名稱"]=變量或字符串信息;
//使用
$_SESSION["Session名稱"];
微信小程序的js后臺(tái)只能執(zhí)行一些簡(jiǎn)單的邏輯,遇到比較復(fù)雜的處理表單數(shù)據(jù)的功能或者網(wǎng)絡(luò)功能就需要連接服務(wù)器來(lái)遠(yuǎn)程處理,實(shí)現(xiàn)方式就是調(diào)用小程序的 wx.request() 這一接口。
request請(qǐng)求 就是基本的HTTP請(qǐng)求,可以攜帶一些表單數(shù)據(jù),交給服務(wù)器處理。
在小程序中的寫(xiě)法如下:
采用php作為服務(wù)器端語(yǔ)言,通過(guò)WAMP等框架可以很容易地搭建環(huán)境,服務(wù)器主要完成對(duì)請(qǐng)求數(shù)據(jù)的處理以及結(jié)果數(shù)據(jù)的返回。
請(qǐng)求數(shù)據(jù)的獲取非常容易,直接訪問(wèn)相應(yīng)的超全局?jǐn)?shù)組,對(duì)于GET方法而言,通過(guò)下面的方式即可:
為了方便小程序端數(shù)據(jù)的處理,結(jié)果數(shù)據(jù)仍通過(guò)json格式返回,具體在php中的簡(jiǎn)單做法就是
這樣返回的json數(shù)據(jù)就為
其中value1,value2等變量可以設(shè)置為多維數(shù)組,這樣通過(guò)json_encode() 函數(shù)之后就可以得到相應(yīng)的嵌套的json數(shù)據(jù),從而方便處理。
通過(guò)php可以很容易地處理微信小程序的request請(qǐng)求,筆者是由于前一段時(shí)間需要進(jìn)行微信小程序的開(kāi)發(fā),就研究了一下小程序的邏輯,然后嘗試用php進(jìn)行服務(wù)端處理,對(duì)于簡(jiǎn)單的請(qǐng)求處理起來(lái)覺(jué)得還不錯(cuò),這篇文章可以作為初次接觸微信小程序的一個(gè)參考。
網(wǎng)頁(yè)名稱:php數(shù)據(jù)的請(qǐng)求,php如何發(fā)起網(wǎng)絡(luò)請(qǐng)求
轉(zhuǎn)載來(lái)源:http://chinadenli.net/article6/heiiig.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、網(wǎng)站排名、定制網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)、建站公司、外貿(mào)建站
聲明:本網(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)