php://memory伪协议的使用

简介: php://memory伪协议的使用

php://memory伪协议,包装器将数据以文件形式来操作,而底层通过内存保存的形式。

简单来说就是让你能通过操作文件的形式来读写内存,方便不?

---如果你的码农生涯也在迷茫,不如忙起来,因为忙起来什么都忘记了

echo sprintf("使用前内存%.2fMB" . PHP_EOL, (memory_get_usage() / 1024 / 1024));

// 读写形式申请内存协议
$mem = fopen('php://memory', 'r+');
$i = 100;
while ($i--) {
    fwrite($mem, str_repeat('李燕茹', 1024));
}

// 使用后占用内存
echo sprintf("使用后内存%.2fMB" . PHP_EOL, (memory_get_usage() / 1024 / 1024));

// 关闭内存协议资源
fclose($mem);
echo sprintf("释放后内存%.2fMB" . PHP_EOL, (memory_get_usage() / 1024 / 1024));
执行结果
  • 使用前内存0.38MB
  • 使用后内存1.26MB
  • 释放后内存0.38MB
目录
相关文章
|
2月前
|
安全 PHP
PHP为协议详解,以及应用
PHP为协议详解,以及应用
33 0
|
4月前
|
JSON PHP 数据格式
PHP Allowed memory size of 134217728 bytes exhausted (tried to allocate 10489856 bytes)
PHP Allowed memory size of 134217728 bytes exhausted (tried to allocate 10489856 bytes)
81 2
|
7月前
|
安全 PHP
【攻防世界】file_include (PHP伪协议+过滤器)
【攻防世界】file_include (PHP伪协议+过滤器)
|
PHP
ctfshow-web3(伪协议php://input的利用)
ctfshow-web3(伪协议php://input的利用)
223 0
|
前端开发 API PHP
php内存溢出:Allowed memory size of 1342bytes exhausted (tried to allocate 8192 bytes)本地配置和宝塔配置解决方案
php内存溢出:Allowed memory size of 1342bytes exhausted (tried to allocate 8192 bytes)本地配置和宝塔配置解决方案
161 0
|
Web App开发 XML 算法
file_put_contents利用技巧(php://filter协议)
file_put_contents利用技巧(php://filter协议)
379 0
|
存储 移动开发 NoSQL
redis 通信协议,php实现redis协议
redis 通信协议,php实现redis协议
180 0
redis 通信协议,php实现redis协议
|
安全 网络安全 PHP
【网络安全篇】php伪协议-漏洞及其原理
🏆今日学习目标: 🍀学习php伪协议
441 0
【网络安全篇】php伪协议-漏洞及其原理
|
安全 PHP
PHP伪协议-文件包含漏洞常用的伪协议
在实战中文件包含漏洞配合PHP的伪协议可以发挥重大的作用,比如读取文件源码,任意命令执行或者开启后门获取webshell等,常用的伪协议有 php://filter 读
625 0
PHP伪协议-文件包含漏洞常用的伪协议
|
PHP Windows
composer PHP Fatal error: Allowed memory size of 报错解决
composer PHP Fatal error: Allowed memory size of 报错解决
135 0