php-doc-en/reference/phar/PharData/compress.xml
Peter Cowburn 0db220e24d phar compress examples fixes
git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@336906 c90b9560-bf6c-de11-be94-00142212c4b1
2015-06-09 20:59:32 +00:00

133 lines
3.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="phardata.compress">
<refnamediv>
<refname>PharData::compress</refname>
<refpurpose>Compresses the entire tar/zip archive using Gzip or Bzip2 compression</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>object</type><methodname>PharData::compress</methodname>
<methodparam><type>int</type><parameter>compression</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>extension</parameter></methodparam>
</methodsynopsis>
<para>
For tar archives, this method compresses the entire archive using
gzip compression or bzip2 compression. The resulting file can be processed with the
gunzip command/bunzip command, or accessed directly and transparently with the Phar
extension.
</para>
<para>
For zip archives, this method fails with an exception.
The <link linkend="ref.zlib">zlib</link> extension must be enabled to compress
with gzip compression, the <link linkend="ref.bzip2">bzip2</link> extension must be
enabled in order to compress with bzip2 compression.
</para>
<para>
In addition, this method automatically renames the archive, appending <literal>.gz</literal>,
<literal>.bz2</literal> or removing the extension if passed <literal>Phar::NONE</literal> to
remove compression. Alternatively, a file extension may be specified with the second
parameter.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>compression</parameter></term>
<listitem>
<para>
Compression must be one of <literal>Phar::GZ</literal>,
<literal>Phar::BZ2</literal> to add compression, or <literal>Phar::NONE</literal>
to remove compression.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>extension</parameter></term>
<listitem>
<para>
By default, the extension is <literal>.tar.gz</literal> or <literal>.tar.bz2</literal>
for compressing a tar, and <literal>.tar</literal> for decompressing.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
A <classname>PharData</classname> object is returned.
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Throws <classname>BadMethodCallException</classname> if
the <link linkend="ref.zlib">zlib</link>
extension is not available, or the <link linkend="ref.bzip2">bzip2</link> extension
is not enabled.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>A <function>PharData::compress</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$p = new PharData('/path/to/my.tar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
$p1 = $p->compress(Phar::GZ); // copies to /path/to/my.tar.gz
$p2 = $p->compress(Phar::BZ2); // copies to /path/to/my.tar.bz2
$p3 = $p2->compress(Phar::NONE); // exception: /path/to/my.tar already exists
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>Phar::compress</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->