Phar->beginとは? わかりやすく解説

Weblio 辞書 > コンピュータ > PHP関数リファレンス > Phar->beginの意味・解説 

Phar->begin

(No version information available, might be only in CVS)
Phar->begin — Phar の変更トランザクションを開始する

説明

void Phar->begin ( void )
技術的には必須ではありませんが、begin() メソッドを使用すると、大量のファイルを含む Phar アーカイブの作成や変更が非常に高速になります。 通常は、Phar アーカイブ内のファイルが作成あるいは変更されるたびに Phar アーカイブ全体を改めて作り直します。 これによって、アーカイブが常に最新の状態となります。
しかし、単に新しい Phar アーカイブを作りたいときや アーカイブ全体を一度に書き出したいときなどは、これは不要です。 同様に、いくつかの変更を行うときに、 すべての変更がうまくいったことを確認してから実際にディスクに書き込みたい ということもあるでしょう。 これは、ちょうどデータベースのトランザクションの概念と同じようなものです。 begin()/commit() の両メソッドが、このような場合のために用意されています。
Phar のトランザクションは、アーカイブ単位で管理されます。 Phar アーカイブ foo.phar 上のトランザクションが、Phar アーカイブ bar.phar に影響をおよぼすことはありません。

例 1690. Phar->begin() の例

<?php
// 確実に消しておきます
@unlink('brandnewphar.phar');
try {
   $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
} catch (Exception $e) {
   echo 'phar を作成できません:', $e;
}
echo '新しい phar のエントリ数は ' . $p->count() . " です\n";
$p->begin();
$p['file.txt'] = 'hi';
$p['file2.txt'] = 'there';
$p['file2.txt']->setCompressedGZ();
$p['file3.txt'] = 'babyface';
$p['file3.txt']->setMetaData(42);
$p->setStub("<?php
function __autoload($class)
{
   include 'phar://' . str_replace('_', '/', $class);
}
Phar::mapPhar('myphar.phar');
include 'phar://myphar.phar/startup.php';
__HALT_COMPILER();");
$p->commit();
?>


参考

Phar->commit()
Phar->getStub()



このページでは「PHP関数リファレンス」からPhar->beginを検索した結果を表示しています。
Weblioに収録されているすべての辞書からPhar->beginを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からPhar->beginを検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Phar->begin」の関連用語

Phar->beginのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Phar->beginのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2024 by the PHP Documentation Group.

©2024 GRAS Group, Inc.RSS