Socket编程 之使用fsockopen()函数
Posted 8013-cmf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Socket编程 之使用fsockopen()函数相关的知识,希望对你有一定的参考价值。
fsockopen函数:初始化一个套接字连接到指定主机(hostname
)
get方式:
client.php
1 <?php 2 //创建连接 3 $fp=fsockopen(‘localhost‘,80,$error,$errstr,10); 4 5 //检测 6 if (!$fp){ 7 echo $errstr;die; 8 } 9 10 //拼接http请求报文 11 $http=‘‘; 12 13 //请求报文包括3部分 请求行 请求头 请求体 14 $http.="GET /phpStudy/http/server.php?username=huahua HTTP1.1 "; 15 16 //请求头信息 17 $http.="Host:localhost "; 18 $http.="Connection:close "; 19 20 //请求体:无 21 22 //发送请求 23 fwrite($fp,$http); 24 25 //获取结果 26 $res=‘‘; 27 while(!feof($fp)){ 28 $res.=fgets($fp); 29 } 30 31 //输出内容 32 echo $res;
server.php
1 <?php 2 //打印$_POST检测参数有没有过来 3 var_dump($_POST); 4 5 //打印cookie内容 6 // var_dump($_COOKIE); 7 8 //打印server的内容 9 // var_dump($_SERVER); 10 11 //打印$_GET 12 // var_dump($_GET); 13 14 //打印$GLOBALS 15 var_dump($GLOBALS);
post方式:
post.php
1 <?php 2 //创建连接 3 $fp=fsockopen(‘localhost‘,80,$errno,$errstr,10); 4 5 //检测 6 if (!$fp){ 7 echo $errstr;die; 8 } 9 10 //拼接http请求报文 11 $http=‘‘; 12 13 //请求报文包括3部分 请求行 请求头 请求体 14 $http.="POST /phpStudy/http/server.php HTTP/1.1 "; 15 16 //请求头信息 17 $http.="Host:localhost "; 18 $http.="Connection:close "; 19 $http.="Cookie:username=admin;uid=200 "; 20 $http.="User-agent:firefox-chrome-safari-ios-android "; 21 $http.="Content-type:application/x-www-form-urlencoded "; 22 $http.="Content-length:39 "; 23 24 //请求体 25 $http.="[email protected]&username=admin "; 26 27 //发送请求 28 fwrite($fp,$http); 29 30 //获取结果 31 $res=‘‘; 32 while(!feof($fp)){ 33 $res.=fgets($fp); 34 } 35 36 //输出内容 37 echo $res;
问题1:返回内容我们用什么?echo
问题2:请求体包括哪3部分? 行 头 体
问题3:使用post方式请求时,使用什么符号来连接参数?&
以上是关于Socket编程 之使用fsockopen()函数的主要内容,如果未能解决你的问题,请参考以下文章