PHP8 Phar::isBuffering
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 1.0.0)
Phar::isBuffering — 用于确定 Phar 写入操作是被缓冲,还是直接刷新到磁盘
说明
public Phar::isBuffering(): boolvoid
此方法可用于确定 Phar 是否会保存更改 立即到磁盘,或者是否需要调用 Phar::stopBuffering() 来启用保存更改。
Phar 写入缓冲是按存档进行的,Phar 存档的缓冲活动不会影响更改 到 Phar 档案。foo.pharbar.phar
参数
此函数没有参数。
返回值
如果写入操作正在缓冲,则返回 true,否则返回 false。
示例
示例 #1 A Phar::isBuffering() example
<?php
$p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
$p2 = new Phar('existingphar.phar');
$p['file1.txt'] = 'hi';
var_dump($p->isBuffering());
var_dump($p2->isBuffering());
?>
=2=
<?php
$p->startBuffering();
var_dump($p->isBuffering());
var_dump($p2->isBuffering());
$p->stopBuffering();
?>
=3=
<?php
var_dump($p->isBuffering());
var_dump($p2->isBuffering());
?>
以上示例会输出:
bool(false)
bool(false)
=2=
bool(true)
bool(false)
=3=
bool(false)
bool(false)
参见
- Phar::startBuffering() - 开始缓冲 Phar 写入操作,不要修改磁盘上的 Phar 对象
- Phar::stopBuffering() - 停止缓冲对 Phar 存档的写入请求,并将更改保存到磁盘