-
Notifications
You must be signed in to change notification settings - Fork 73
/
compress.xml
151 lines (141 loc) · 5.15 KB
/
compress.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: f03806fcd8fe03a0501bd40b6e3939ff6589a1d2 Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="phardata.compress" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>PharData::compress</refname>
<refpurpose>Сжимает весь архив tar/zip, используя сжатие Gzip или Bzip2</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis role="PharData">
<modifier>public</modifier> <type class="union"><type>PharData</type><type>null</type></type><methodname>PharData::compress</methodname>
<methodparam><type>int</type><parameter>compression</parameter></methodparam>
<methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>extension</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Для tar-архивов, этот метод произведёт сжатие всего архива с помощью
gzip или bzip2. Результирующий файл можно распаковать с помощью команд
gunzip или bunzip, либо использовать напрямую через модуль Phar.
</para>
<para>
Для zip-архивов этот метод выбросит исключение.
Для gzip-сжатия должен быть доступен модуль <link linkend="ref.zlib">zlib</link>.
Для bzip2-сжатия должен быть доступен модуль <link linkend="ref.bzip2">bzip2</link>.
</para>
<para>
Этот метод переименовывает архив, добавляя к его имени расширение <literal>.gz</literal>,
<literal>.bz2</literal> или наоборот, убирающее его, если параметр типа сжатия задан как
<literal>Phar::NONE</literal>. Также можно явно указать, какое расширение будет
иметь файл.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>compression</parameter></term>
<listitem>
<para>
Одна из констант: <literal>Phar::GZ</literal>,
<literal>Phar::BZ2</literal>, или <literal>Phar::NONE</literal> для отключения компрессии.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>extension</parameter></term>
<listitem>
<para>
По умолчанию файлу назначится расширение <literal>.tar.gz</literal>
или <literal>.tar.bz2</literal> для сжатия и <literal>.tar</literal>, если сжатие отключено.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Возвращает объект <classname>PharData</classname> в случае успешного выполнения или &null; в случае возникновения ошибки.
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Выбрасывает исключение <classname>BadMethodCallException</classname>, если
недоступен модуль <link linkend="ref.zlib">zlib</link> или выключен модуль
<link linkend="ref.bzip2">bzip2</link>.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
<parameter>extension</parameter> теперь допускает значение null.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>PharData::compress</function></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
-->