关于php支持的协议与封装协议

 1 <?php
 2
 3 /*
 4  * php://stdin 标准输入流
 5  * php://stdout 标准输入流
 6  * php://stderr 标准错误流
 7  * php://output 只写的数据流
 8  * php://fd     允许直接方位文件描述符
 9  *
10  * php://memory 允许读写临时数据    php://memory 和 php://temp 都是允许读写的临时数据,他俩的唯一区别是 php://memory 总是把数据存在内存中
11  *                                  而php://temp 会在内存达到预定义的限制后把数据存在临时文件中,sys_get_temp_dir() 可以获取临时文件的地址
12  *                                  php://temp 的内存限制可以通过php://maxmemory:XX来限制,XX的单位是字节.
13  * php://temp   允许读写临时数据
14  *
15  * php://filter 数据筛选流 , 是一种元封装器,用于数据打开时筛选过滤应用
16  * */
17 /*
18  * 测试读写临时数据流,php://temp
19  *
20     $fiveMBs  =  5  *  1024  *  1024 ;
21     $fp  =  fopen ( "php://temp/maxmemory: $fiveMBs " ,  ‘r+‘ );
22
23     fputs ( $fp ,  "hello\n" );
24
25     // Read what we have written.
26     rewind ( $fp );
27     echo  stream_get_contents ( $fp );
28  */
29
30 //测试只写数据流
31 $out = fopen("php://output","a");
32 fputs($out,"测试只能输出流");

可选项:

php://filter 的试用方法:

1 /* 这会以大写字母输出 www.example.com 的全部内容 */
2  readfile ( "php://filter/read=string.toupper/resource=http://www.example.com" );
3
4  /* 这会和以上所做的一样,但还会用 ROT13 加密。 */
5  readfile ( "php://filter/read=string.toupper|string.rot13/resource=http://www.example.com" );
1 /* 这会通过 rot13 过滤器筛选出字符 "Hello World"
2   然后写入当前目录下的 example.txt */
3  file_put_contents ( "php://filter/write=string.rot13/resource=example.txt" , "Hello World" );

PHP支持的封装协议大体上就这么理解了。

  

时间: 2024-10-08 00:32:54

关于php支持的协议与封装协议的相关文章

支持的协议和封装协议

file:// - 访问本地文件系统 http:// - 访问 HTTP(s) 网址 ftp:// - 访问 FTP(s) URLs php:// - 访问各个输入/输出流(I/O streams) zlib:// - 压缩流 data:// - 数据(RFC 2397) glob:// - 查找匹配的文件路径模式 phar:// - PHP 归档 ssh2:// - Secure Shell 2 rar:// - RAR ogg:// - 音频流 expect:// - 处理交互式的流

LFI &amp; RFI &amp; PHP封装协议之安全问题研究

目录 1. 文件包含的基本概念 2. LFI(Local File Include) 3. RFI(Remote File Include) 4. PHP中的封装协议(伪协议).PHP的流式文件操作模式所带来的问题 1. 文件包含的基本概念 严格来说,文件包含漏洞是"代码注入"的一种."代码注入"这种攻击,其原理就是注入一段用户能控制的脚本或代码,并让服务器端执行."代码注入"的典型代码就是文件包含(File Inclusion),我的理解是叫&

支持嵌入式的TCP/IP协议可加载到用户的应用程序的条码控件TConnector

TConnector ActiveX条码控件可加载到用户的应用程序或MS-IE.VB.VC++.Excel.Access.WinWord.Delphi等应用程序中,用户可以在几分钟内连接任意设备(如一个条形码阅读器的加载时间). 产品特征: 支持嵌入式的TCP/IP协议,简化企业级网络应用. 标准的应用程序接口只需调用5个函数就可支持串行接口(读/写),并行接口(写),企业网(TCP/IP)读/写,空设备和文件IO读/写. TConnector主要是为了数据采集而开发的,但是由于其设计的灵活性,

iOS-二进制协议的封装

对于在SDK socket通信时会存在二进制协议的通信模式,对于此根据以往的工作内容进行小结: 首先在socket通讯中可以有字符串协议和二进制协议,通过协议来达到通讯的目的.对于字符串协议就是通过字符串来制定通讯的标准模式是"string"-"value"模式,通过XML或者json来达到网络传输,解析封装也是基于XML或者json进行信息提取. 对于二进制协议,在C语言是通过struct对协议进行封装,在iOS中使用的是OC,在OC中你也可以通过C语言对二进制协

php封装协议的两道题

这几天终于刷完了自己说是要刷完的那几道题,赶紧写几篇博客记录.. 1.  先看看这个网站:https://blog.csdn.net/qq_41289254/article/details/81388343 接下来直接上题: 1.http://123.206.87.240:8005/post/index.php?file=show.php 看源码和抓包都无果,根据题目提示,flag在index里,应该想到这里是要我们找到index.php的源码. 再看url里面file参数=show.php这里

Http协议与TCP协议简单理解

在C#编写代码,很多时候会遇到Http协议或者TCP协议,这里做一个简单的理解. TCP协议对应于传输层,而HTTP协议对应于应用层,从本质上来说,二者没有可比性.Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求.Http会通过TCP建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,Http会立即将TCP连接断开,这个过程是很短的.所以Http连接是一种短连接,是一种无状态的连接.所谓的无状态,是指浏览器每次向服务器发起请求的时候,

iOS Http协议与TCP协议简单理解

在C#编写代码,很多时候会遇到Http协议或者TCP协议,这里做一个简单的理解. TCP协议对应于传输层,而HTTP协议对应于应用层,从本质上来说,二者没有可比性.Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求.Http会通过TCP建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,Http会立即将TCP连接断开,这个过程是很短的.所以Http连接是一种短连接,是一种无状态的连接.所谓的无状态,是指浏览器每次向服务器发起请求的时候,

在网络7层协议中,如果想使用UDP协议达到TCP协议的效果,可以在哪层做文章?(QQ 为什么采用 UDP 协议,而不采用 TCP 协议实现?)

为了解决这题,可以具体看看下面这个讨论. 解灵运工程师 185 人赞同 某次架构师大会上那个58同城做即时通信的人说:原因是因为当时没有epoll这种可以支持成千上万tcp并发连接的技术,所以他们使用了udp,然后在udp上面封装了一下,模拟了一下tcp,解决了大并发的问题,之后因为做的很nb了,虽然epoll这种技术出现了,还是没有改回使用tcp了.现在再做类似的东西就不需要使用udp了.这个说法应该比较可信的. 发布于 2014-04-16 18 条评论 感谢 分享 收藏 • 没有帮助 • 

【转】SSL协议、SET协议、HTTPS简介

一.SSL协议简介 SSL是Secure Socket Layer的缩写,中文名为安全套接层协议层.使用该协议后,您提交的所有数据会首先加密后,再提交到网易邮箱,从而可以有效防止黑客盗取您的用户名.密码和通讯内容,保证了您个人内容的安全. 具体地说,SSL (Secure Socket Layer) 为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络 上之传输过程中不会被截取及窃听.目前一般通用之规格为40 bit之安