Phar::convertToExecutable phar アーカイブを実行可能な別の phar アーカイブ形式に変換する &reftitle.description; public PharnullPhar::convertToExecutable intnullformat&null; intnullcompression&null; stringnullextension&null; &phar.write; このメソッドは、phar アーカイブを別のファイル形式に変換します。 たとえば、zip 形式の実行可能な phar アーカイブあるいは phar 形式の実行可能な phar アーカイブから tar 形式の実行可能な phar アーカイブを作成することができます。 さらに、tar あるいは phar 形式のアーカイブについてはアーカイブ全体を圧縮することもできます。 何も変更しなかった場合、このメソッドは BadMethodCallException をスローします。 成功した場合は、このメソッドはディスク上に新しいアーカイブを作成して Phar オブジェクトを返します。 古いアーカイブは削除されずディスク上に残るので、 処理を終えたら手動で削除する必要があります。 &reftitle.parameters; format これは Phar::PHARPhar::TAR あるいは Phar::ZIP のいずれかとなります。 &null; を指定すると、現在のファイル形式をそのまま保持します。 compression アーカイブ全体の圧縮を行わない場合は Phar::NONE、 zlib による圧縮の場合は Phar::GZ、そして bzip による圧縮の場合は Phar::BZ2 のいずれかを指定します。 extension このパラメータは、変換後のアーカイブのデフォルトのファイル拡張子を変更します。 実行可能でない tar や zip アーカイブのファイル名としては .phar は使用できないことに注意しましょう。 phar 形式のアーカイブに変換する場合、デフォルトの拡張子は圧縮形式によって .phar.phar.gz あるいは .phar.bz2 のいずれかとなります。tar 形式のアーカイブの場合、デフォルトの拡張子は .phar.tar.phar.tar.gz および .phar.tar.bz2 です。zip 形式のアーカイブの場合、 デフォルトの拡張子は .phar.zip となります。 &reftitle.returnvalues; このメソッドは、成功した場合に Phar オブジェクトを返します。失敗した場合は &null; を返します。 &reftitle.errors; 圧縮ができない場合や無効な圧縮方式が指定された場合、あるいは Phar::startBuffering でバッファリングしたまま Phar::stopBuffering を実行していないアーカイブを処理しようとした場合に BadMethodCallException をスローします。 また、書き込みサポートが無効な場合に UnexpectedValueException、 phar 作成中に何らかの問題が発生した場合に PharException をスローします。 &reftitle.changelog; &Version; &Description; 8.0.0 formatcompressionextension は、nullable になりました。 &reftitle.examples; <function>Phar::convertToExecutable</function> の例 Phar::convertToExecutable() の使用例です。 convertToExecutable(Phar::PHAR); // myphar.phar を作成します $phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php')); // myphar.phar.tgz を作成します $compressed = $phar->convertToExecutable(Phar::TAR, Phar::GZ, '.phar.tgz'); } catch (Exception $e) { // ここでエラー処理をします } ?> ]]> &reftitle.seealso; Phar::convertToData PharData::convertToExecutable PharData::convertToData