phar ファイルに関して、私が完全に見逃していたことがあります。phpunit、pdepend、およびその他の依存関係を必要とするプロジェクトをインストールしています。それらを .phar ファイルとして取得しました。しかし、コマンド ライン ツール (php コマンド) を使用してそれらからファイルを抽出することはできません。問題をグーグルで検索しましたが、質問に実際に答えているものは何も見つかりませんでした。誰でも助けることができますか?
質問する
66481 次
7 に答える
91
@pozs の回答を拡張すると、実際に単純なワンライナーでPharData->extractToを使用できます。
php -r '$phar = new Phar("phar-file.phar"); $phar->extractTo("./directory");'
于 2014-01-20T08:34:27.047 に答える
22
はい、このライブラリで実行できます: https://github.com/koto/phar-util
phar-extract library.phar 出力ディレクトリ
于 2012-10-21T11:30:33.870 に答える
7
このサイトでは、.phar ファイルを .zip ファイルに簡単に変換できます。
やってみて。
于 2014-06-03T06:08:53.807 に答える
4
単に使用したい場合は、 as を含める必要がありますphar:///path/to/myphar.phar/file.php
。
しかし、本当に解凍したい場合は、PharDataクラスを参照してください - コマンドラインでの既知の (内部) 抽出はありませんが、そのためのスクリプトを作成できます。
于 2012-10-21T11:32:39.313 に答える
2
PHP には phar アーカイブを抽出する関数もありますが、ファイルは現在の圧縮を維持します。アーカイブを適切に抽出するには、最初に非圧縮形式に変換してから抽出する必要があります。
<?php
$phar = new Phar('Someclass.phar');
$phar2 = $phar->convertToExecutable (Phar::TAR,Phar::NONE); // Convert to an uncompressed tar archive
$phar2->extractTo('/some/path/'); // Extract all files
これにより、すべてのファイルが非圧縮になります。
于 2015-06-17T12:37:30.370 に答える