PHP stream_wrapper_register】的更多相关文章

<?php /** * 引用:http://php.net/manual/en/function.stream-wrapper-register.php * 把变量当成文件读写的协议 * * Class VariableStream */ class VariableStream { private $postition; // 当前的位置 private $varname; // 变量的名字 /** * 打开 * * @param $path * @param $mode * @param $…
如何执行字符串的PHP代码 最近因项目需要,引出一个议题:如何执行字符串的php代码(php和html混写). 注:传统情况下,php代码存储在文件中,直接运行文件即可.以下讨论的情况是,如果php代码是从数据库中获取到,那么要如何运行? 最直观的方案 将字符串代码写到临时文件,然后在项目中include该文件,执行完成再删除这个临时文件 system exec 之类的系统函数 php函数eval (会不会有安全问题?) 进一步的瞎想 把字符串代码当做参数,传入到php的cli或者php-fpm…
PHP Stream Wrapper 原文:http://blog.sina.com.cn/s/blog_502c8cc40100k40e.html ,主要是基于SAE环境讲述相应的应用场景,本文经过一定的整理和少量补充. 一.PHP Wrapper是什么 自PHP 4.3开始,PHP开始允许用户通过stream_wrapper_register()自定义URL风格的协议.用户使用fopen(), copy()等文件系统函数对封装协议进行操作时,PHP会调用注册协议时所提供的类中相应的函数. P…
本文希望分享一些本地文件包含.远程文件包含.PHP的封装协议(伪协议)中可能包含的漏洞 相关学习资料 http://www.ibm.com/developerworks/cn/java/j-lo-longpath.html http://hi.baidu.com/casperkid/item/2baf952b13a9cd0e76272cb0 http://hi.baidu.com/txcbg/item/c9549af659b3de0dd99e725e http://cn2.php.net/man…
目录 . 文件包含的基本概念 . LFI(Local File Include) . RFI(Remote File Include) . PHP中的封装协议(伪协议).PHP的流式文件操作模式所带来的问题 1. 文件包含的基本概念 严格来说,文件包含漏洞是"代码注入"的一种."代码注入"这种攻击,其原理就是注入一段用户能控制的脚本或代码,并让服务器端执行."代码注入"的典型代码就是文件包含(File Inclusion),我的理解是叫"…
附录 L. 支持的协议/封装协议列表 目录 文件系统 Socket HTTP 和 HTTPS FTP 和 FTPS PHP 输入/输出流 压缩流 Secure Shell 2 音频流  以下是 PHP 内置用于文件系统函数例如 fopen() 和 copy() 的 URL 风格协议列表.除了这些封装协议之外,从 PHP 4.3 起,还可以用 PHP 脚本和 stream_wrapper_register() 写自己的封装协议. 文件系统 所有版本的 PHP.自 PHP 4.3.0 以来明确使用…
每次要用PHP的某个功能的时候,都要去查一下,于是决定将PHP所有类和函数都整理出来,加上注释 大致实现 将php.jar文件解压,取出目录stubs 将stubs中的所有php文件中的注释去掉,并做格式化处理,放在目录output 将所有文件中类和函数解析出来 从http://php.net/manual/zh/中将类和函数注释解析出来 格式化输出类和函数及所有注释 github地址:https://github.com/chentaihan/phpNote a 0 acos 反余弦 1 ac…
目录 0×01 文件包含简介 服务器执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码,并且当PHP来执行,这会为开发者节省大量的时间.这意味着您可以创建供所有网页引用的标准页眉或菜单文件.当页眉需要更新时,您只更新一个包含文件就可以了,或者当您向网站添加一张新页面时,仅仅需要修改一下菜单文件(而不是更新所有网页中的链接). 文件包含函数 PHP中文件包含函数有以下四种: require() require_once() include() include_once() incl…
GeSHi Documentation Version 1.0.8.11 Authors: © 2004 - 2007 Nigel McNie © 2007 - 2012 Benny Baumann © 2008 - 2009 Milian Wolff GeSHi Website: http://qbnz.com/highlighter This is the documentation for GeSHi - Generic Syntax Highlighter. The most moder…
支持的协议和封装协议 PHP 带有很多内置 URL 风格的封装协议,可用于类似 fopen(). copy(). file_exists() 和 filesize() 的文件系统函数. 除了这些封装协议,还能通过 stream_wrapper_register() 来注册自定义的封装协议. Note: 用于描述一个封装协议的 URL 语法仅支持 scheme://... 的语法. scheme:/ 和 scheme: 语法是不支持的. file:// — 访问本地文件系统 http:// — 访…