PHP实现模拟http请求的方法分析

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP实现模拟http请求的方法。分享给大家供大家参考,具体如下:

http简析中,我们提到了浏览器请求资源的一个流程,那么这个流程能不能用php来模拟呢?答案是肯定的。

php模拟http请求需要实现以下步骤:

1.连接apache服务器

使用fsockopen:专门用于连接服务器,得到一个连接资源

2.写入http协议

使用fwrite向资源写入内容

3.接收数据

请求成功后返回的数据会被存放在资源中

4.解析数据:

使用fgets,和fgetc函数

实现代码:

<?php
  //php模拟发出http请求
  //1.连接目标服务器apache
  $f=fsockopen('localhost',98,$erron,$error);
  //2.写入http协议
  //2.1拼凑http协议
  //请求行
  $http="GET /phpstudy/index.php HTTP/1.1\r\n";
  //请求头
  $http .="Host:localhost\r\n";
  //空行
  $http .="\r\n";
  //2.2写给apache服务器
  if(fwrite($f,$http))
  {
    //写入成功
    //3.数据已经接收并存放在f资源中
    //4.解析资源
    //循环遍历
    while($line=fgets($f,1024))
    {
      //输出
      echo $line ."</br>";
    }
  }

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php socket用法总结》、《PHP网络编程技巧总结》、《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

snoopy PHP版的网络客户端提供本地下载

magpierss中就用到了snoopy,这让我有点兴趣去研究下这个咚咚。再SF上,找到了这个源代码。居然就是一个类,但不要笑看哦,功能可是很强大的。    ...

PHP 中文乱码解决办法总结分析

一.首先是PHP网页的编码 1. php文件本身的编码与网页的编码应匹配 a. 如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/ht...

php读取html并截取字符串的简单代码

复制代码 代码如下:<?php $title='【宜配屋www.yipeiwu.com】'; $hello='jb51.net!'; $file=file_get_contents...

PHP实现的简单适配器模式示例

本文实例讲述了PHP实现的简单适配器模式。分享给大家供大家参考,具体如下: <?php //适配器模式-通过适配器去执行第三方方法 //定义目标接口 interface...

五款PHP代码重构工具推荐

五款PHP代码重构工具推荐

在软件工程学里,重构代码一词通常是指在不改变代码的外部行为情况下而修改源代码。软件重构需要借助工具完成,而重构工具能够修改代码同时修改所有引用该代码的地方。本文收集了五款出色的PHP代码...