Phar->isFlushingToPhar

(no version information, might be only in CVS)

Phar->isFlushingToPhar -- Phar 作成トランザクションがアクティブかどうかを調べる

説明

void Phar->isFlushingToPhar ( void )

このメソッドを使用すると、その Phar が変更を即時にディスクに書き込むのか それとも Phar->commit() をコールしないと変更が保存されないのかがわかります。

Phar トランザクションはアーカイブ単位で処理されます。 Phar アーカイブ foo.phar でトランザクションが有効であったとしても、それは Phar アーカイブ bar.phar の変更には影響しません。

例 1. Phar->isFlushingToPhar() の例

<?php
$p
= new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
$p['file1.txt'] = 'hi';
var_dump($p->isFlushingToPhar());
$p->begin();
var_dump($p->isFlushingToPhar());
$p->commit();
var_dump($p->isFlushingToPhar());
?>

上の例の出力は以下となります。

bool(true)
bool(false)
bool(true)

参考

Phar->begin()
Phar->commit()