Updated to reflect to new Rar interface.

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@291806 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Gustavo André dos Santos Lopes 2009-12-07 08:10:06 +00:00
parent 37fa587c55
commit 3ceffd99b7
16 changed files with 904 additions and 481 deletions

View file

@ -26,9 +26,8 @@
&reference.rar.setup;
&reference.rar.constants;
&reference.rar.examples;
&reference.rar.rararchive;
&reference.rar.rarentry;
<!-- FIXME: Apparently this extension has some classes -->
&reference.rar.reference;
</book>

View file

@ -1,90 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<refentry xml:id="function.rar-close" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>rar_close</refname>
<refpurpose>Close RAR archive and free all resources.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>rar_close</methodname>
<methodparam><type>resource</type><parameter>rar_file</parameter></methodparam>
</methodsynopsis>
<para>
Close RAR archive and free all allocated resources.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>rar_file</parameter></term>
<listitem>
<para>
A Rar file resource, opened with <function>rar_open</function>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>2.0.0</entry>
<entry>
The Rar entries returned by <function>rar_entry_get</function>
and <function>rar_list</function> are now invalidated when
calling <function>rar_close</function>.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</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:"../../../../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
-->

View file

@ -1,71 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<refentry xml:id="function.rar-comment-get" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>rar_comment_get</refname>
<refpurpose>Get comment text from the RAR archive.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>rar_comment_get</methodname>
<methodparam><type>resource</type><parameter>rar_file</parameter></methodparam>
</methodsynopsis>
<para>
Get the comment stored in the RAR archive. It may be up to 64 KiB long.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>rar_file</parameter></term>
<listitem>
<para>
A Rar file resource, opened with <function>rar_open</function>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the comment or &null; if there is none.
</para>
<note>
<para>
Rar has currently no support for unicode comments. The encoding of the
result of this function is not specified, but it will probably be
Windows-1252.
</para>
</note>
</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:"../../../../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
-->

View file

@ -1,103 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<refentry xml:id="function.rar-entry-get" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>rar_entry_get</refname>
<refpurpose>Get entry object from the RAR archive.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>RarEntry</type><methodname>rar_entry_get</methodname>
<methodparam><type>resource</type><parameter>rar_file</parameter></methodparam>
<methodparam><type>string</type><parameter>entry_name</parameter></methodparam>
</methodsynopsis>
<para>
Get entry object (file or directory) from the RAR archive.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>rar_file</parameter></term>
<listitem>
<para>
A Rar file resource, opened with <function>rar_open</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>entry_name</parameter></term>
<listitem>
<para>
Path to the entry within the Rar archive.
</para>
<note>
<para>The path must be the same returned by
<function>RarEntry::getName</function>.</para>
</note>
</listitem>
</varlistentry>
</variablelist>
</para>
<note>
<para>You can also get entry objects using
<function>rar_list</function>.</para>
</note>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<function>rar_entry_get</function> returns entry object &return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>rar_entry_get</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");
$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");
print_r($entry);
?>
]]>
</programlisting>
</example>
</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:"../../../../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
-->

View file

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<refentry xml:id="function.rar-list" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>rar_list</refname>
<refpurpose>Get entries list from the RAR archive.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>rar_list</methodname>
<methodparam><type>resource</type><parameter>rar_file</parameter></methodparam>
</methodsynopsis>
<para>
Get entries list (files and directories) from the RAR archive.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>rar_file</parameter></term>
<listitem>
<para>
A Rar file resource, opened with <function>rar_open</function>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<function>rar_list</function> returns array of <type>RarEntry</type> objects
&return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>rar_list</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");
$entries_list = rar_list($rar_file);
print_r($entries_list);
?>
]]>
</programlisting>
</example>
</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:"../../../../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
-->

View file

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<refentry xml:id="function.rar-open" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>rar_open</refname>
<refpurpose>Open RAR archive.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>resource</type><methodname>rar_open</methodname>
<methodparam><type>string</type><parameter>filename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>password</parameter></methodparam>
</methodsynopsis>
<para>
Open specified Rar archive and return Rar file resource.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>filename</parameter></term>
<listitem>
<para>
Path to the Rar archive.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>password</parameter></term>
<listitem>
<para>
A plain password, if needed.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
<warning>
<para>Prior to version 2.0.0, this function would not handle relative
paths correctly. Use <function>realpath</function> as a word-around.</para>
</warning>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<function>rar_open</function> returns Rar file resource &return.falseforfailure;.
</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:"../../../../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
-->

View file

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.rararchive" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The RarArchive class</title>
<titleabbrev>RarArchive</titleabbrev>
<partintro>
<!-- {{{ RarArchive intro -->
<section xml:id="rararchive.intro">
&reftitle.intro;
<para>
This class represents a RAR archive, which may be formed by several volumes (parts) and which contains
a number of RAR entries (i.e., files, directories and other special objects such as symbolic links).
</para>
</section>
<!-- }}} -->
<section xml:id="rararchive.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>RarArchive</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>RarArchive</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">Methods</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.rararchive')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
</partintro>
&reference.rar.entities.rararchive;
</phpdoc:classref>
<!-- 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:"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
-->

View file

@ -0,0 +1,144 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="rararchive.close" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>RarArchive::close</refname>
<refname>rar_close</refname>
<refpurpose>Close RAR archive and free all resources.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>Object oriented style (method):</para>
<methodsynopsis>
<modifier>public</modifier> <type>bool</type><methodname>RarArchive::close</methodname>
<void />
</methodsynopsis>
<para>Procedural style:</para>
<methodsynopsis>
<type>bool</type><methodname>rar_close</methodname>
<methodparam><type>RarArchive</type><parameter>rarfile</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>rarfile</parameter></term>
<listitem>
<para>
A <type>RarArchive</type> object, opened with <function>rar_open</function>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>2.0.0</entry>
<entry>
The RAR entries returned by <methodname>RarArchive::getEntry</methodname>
and <methodname>RarArchive::list</methodname> are now invalidated when
calling this method. This means that all instance methods called for
such entries and not guaranteed to succeed.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Object oriented style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = RarArchive::open('latest_winrar.rar');
echo $rar_arch."\n";
$rar_arch->close();
echo $rar_arch."\n";
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
RAR Archive "D:\php_rar\trunk\tests\latest_winrar.rar"
RAR Archive "D:\php_rar\trunk\tests\latest_winrar.rar" (closed)
]]>
</screen>
</example>
</para>
<para>
<example>
<title>Procedural style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = rar_open('latest_winrar.rar');
echo $rar_arch."\n";
rar_close($rar_arch);
echo $rar_arch."\n";
?>
]]>
</programlisting>
</example>
</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:"../../../../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
-->

View file

@ -0,0 +1,121 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="rararchive.getcomment" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>RarArchive::getComment</refname>
<refname>rar_comment_get</refname>
<refpurpose>Get comment text from the RAR archive.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>Object oriented style (method):</para>
<methodsynopsis>
<modifier>public</modifier> <type>string</type><methodname>RarArchive::getComment</methodname>
<void />
</methodsynopsis>
<para>Procedural style:</para>
<methodsynopsis>
<type>string</type><methodname>rar_comment_get</methodname>
<methodparam><type>RarArchive</type><parameter>rarfile</parameter></methodparam>
</methodsynopsis>
<para>
Get the (global) comment stored in the RAR archive. It may be up to 64 KiB long.
</para>
<note>
<para>
This extension does not support comments at the entry level.
</para>
</note>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>rarfile</parameter></term>
<listitem>
<para>
A <type>RarArchive</type> object, opened with <function>rar_open</function>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the comment or &null; if there is none.
</para>
<note>
<para>
RAR has currently no support for unicode comments. The encoding of the
result of this function is not specified, but it will probably be
Windows-1252.
</para>
</note>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Object oriented style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = RarArchive::open('commented.rar');
echo $rar_arch->getComment();
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
This is the comment of the file commented.rar.
]]>
</screen>
</example>
</para>
<para>
<example>
<title>Procedural style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = rar_open('commented.rar');
echo rar_comment_get($rar_arch);
?>
]]>
</programlisting>
</example>
</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:"../../../../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
-->

View file

@ -0,0 +1,140 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="rararchive.getentry" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>RarArchive::getEntry</refname>
<refname>rar_entry_get</refname>
<refpurpose>Get entry object from the RAR archive.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>Object oriented style (method):</para>
<methodsynopsis>
<modifier>public</modifier> <type>RarEntry</type><methodname>RarArchive::getEntry</methodname>
<methodparam><type>string</type><parameter>filename</parameter></methodparam>
</methodsynopsis>
<para>Procedural style:</para>
<methodsynopsis>
<type>RarEntry</type><methodname>rar_entry_get</methodname>
<methodparam><type>RarArchive</type><parameter>rarfile</parameter></methodparam>
<methodparam><type>string</type><parameter>entryname</parameter></methodparam>
</methodsynopsis>
<para>
Get entry object (file or directory) from the RAR archive.
</para>
<note>
<para>You can also get entry objects using <methodname>RarArchive::list</methodname>.</para>
</note>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>rarfile</parameter></term>
<listitem>
<para>
A <type>RarArchive</type> object, opened with <function>rar_open</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>entryname</parameter></term>
<listitem>
<para>
Path to the entry within the RAR archive.
</para>
<note>
<para>The path must be the same returned by
<methodname>RarEntry::getName</methodname>.</para>
</note>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the matching <type>RarEntry</type> object &return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Object oriented style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = RarArchive::open('solid.rar');
if ($rar_arch === FALSE)
die("Could not open RAR archive.");
$rar_entry = $rar_arch->getEntry('tese.txt');
if ($rar_entry === FALSE)
die("Could get such entry");
echo get_class($rar_entry)."\n";
echo $rar_entry;
$rar_arch->close();
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
RarEntry
RarEntry for file "tese.txt" (23b93a7a)
]]>
</screen>
</example>
</para>
<para>
<example>
<title>Procedural style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = rar_open('solid.rar');
if ($rar_arch === FALSE)
die("Could not open RAR archive.");
$rar_entry = rar_entry_get($rar_arch, 'tese.txt');
if ($rar_entry === FALSE)
die("Could get such entry");
echo get_class($rar_entry)."\n";
echo $rar_entry;
rar_close($rar_arch);
?>
]]>
</programlisting>
</example>
</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:"../../../../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
-->

View file

@ -0,0 +1,138 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="rararchive.list" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>RarArchive::list</refname>
<refname>rar_list</refname>
<refpurpose>Get entries full list from the RAR archive.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>Object oriented style (method):</para>
<methodsynopsis>
<modifier>public</modifier> <type>array</type><methodname>RarArchive::list</methodname>
<void />
</methodsynopsis>
<para>Procedural style:</para>
<methodsynopsis>
<type>array</type><methodname>rar_list</methodname>
<methodparam><type>RarArchive</type><parameter>rarfile</parameter></methodparam>
</methodsynopsis>
<para>
Get entries list (files and directories) from the RAR archive.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>rarfile</parameter></term>
<listitem>
<para>
A <type>RarArchive</type> object, opened with <function>rar_open</function>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<function>rar_list</function> returns array of <type>RarEntry</type> objects
&return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Object oriented style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = RarArchive::open('solid.rar');
if ($rar_arch === FALSE)
die("Could not open RAR archive.");
$rar_entries = $rar_arch->list();
if ($rar_entries === FALSE)
die("Could retrieve entries.");
echo "Found " . count($rar_entries) . " entries.\n";
foreach ($rar_entries as $e) {
echo $e;
echo "\n";
}
$rar_arch->close();
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
Found 2 entries.
RarEntry for file "tese.txt" (23b93a7a)
RarEntry for file "unrardll.txt" (2ed64b6e)
]]>
</screen>
</example>
</para>
<para>
<example>
<title>Procedural style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = rar_open('solid.rar');
if ($rar_arch === FALSE)
die("Could not open RAR archive.");
$rar_entries = rar_list($rar_arch);
if ($rar_entries === FALSE)
die("Could retrieve entries.");
echo "Found " . count($rar_entries) . " entries.\n";
foreach ($rar_entries as $e) {
echo $e;
echo "\n";
}
rar_close($rar_arch);
?>
]]>
</programlisting>
</example>
</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:"../../../../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
-->

View file

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="rararchive.open" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>RarArchive::open</refname>
<refname>rar_open</refname>
<refpurpose>Open RAR archive.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>Object oriented style (method):</para>
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>RarArchive</type><methodname>RarArchive::open</methodname>
<methodparam><type>string</type><parameter>filename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>password</parameter></methodparam>
</methodsynopsis>
<para>Procedural style:</para>
<methodsynopsis>
<type>RarArchive</type><methodname>rar_open</methodname>
<methodparam><type>string</type><parameter>filename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>password</parameter></methodparam>
</methodsynopsis>
<para>
Open specified RAR archive and return <type>RarArchive</type> instance representing it.
</para>
<note>
<para>
If opening a multi-volume archive, the path of the first volume should be passed as the first parameter.
Otherwise, not all files will be shown. This is by design.
</para>
</note>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>filename</parameter></term>
<listitem>
<para>
Path to the Rar archive.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>password</parameter></term>
<listitem>
<para>
A plain password, if needed to decrypt the headers. It will also be used by default
if encrypted files are found. Note that the files may have
different passwords in respect to the headers and among them.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
<warning>
<para>Prior to version 2.0.0, this function would not handle relative
paths correctly. Use <function>realpath</function> as a word-around.</para>
</warning>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the requested <type>RarArchive</type> instance &return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Object oriented style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = RarArchive::open('encrypted_headers.rar', 'samplepassword');
if ($rar_arch === FALSE)
die("Failed opening file");
$entries = $rar_arch->list();
if ($entries === FALSE)
die("Failed fetching entries");
echo "Found " . count($entries) . " files.\n";
if (empty($entries))
die("No valid entries found.");
$stream = reset($entries)->getStream();
if ($stream === FALSE)
die("Failed opening first file");
$rar_arch->close();
echo "Content of first one follows:\n";
echo stream_get_contents($stream);
fclose($stream);
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
Found 2 files.
Content of first one follows:
Encrypted file 1 contents.
]]>
</screen>
</example>
</para>
<para>
<example>
<title>Procedural style</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = rar_open('encrypted_headers.rar', 'samplepassword');
if ($rar_arch === FALSE)
die("Failed opening file");
$entries = rar_list($rar_arch);
if ($entries === FALSE)
die("Failed fetching entries");
echo "Found " . count($entries) . " files.\n";
if (empty($entries))
die("No valid entries found.");
$stream = reset($entries)->getStream();
if ($stream === FALSE)
die("Failed opening first file");
rar_close($rar_arch);
echo "Content of first one follows:\n";
echo stream_get_contents($stream);
fclose($stream);
?>
]]>
</programlisting>
</example>
</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:"../../../../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
-->

View file

@ -0,0 +1,88 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="rararchive.tostring" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>RarArchive::__toString</refname>
<refpurpose>Get text representation.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>RarArchive::__toString</methodname>
<void />
</methodsynopsis>
<para>
Provides a string representation for this <type>RarArchive</type> object. It currently shows
the full path name of the archive volume that was opened and whether the resource is valid
or was already closed through a call to <methodname>RarArchive::close</methodname>.
</para>
<para>
This method may be used only for debugging purposes, as there are no guarantees as to which
information the result contains or how it is formatted.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
A textual representation of this <type>RarArchive</type> object.
The content of this representation is unspecified.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><methodname>RarArchive::__toString</methodname> example</title>
<programlisting role="php">
<![CDATA[
<?php
$rar_arch = RarArchive::open('latest_winrar.rar');
echo $rar_arch."\n";
$rar_arch->close();
echo $rar_arch."\n";
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
RAR Archive "D:\php_rar\trunk\tests\latest_winrar.rar"
RAR Archive "D:\php_rar\trunk\tests\latest_winrar.rar" (closed)
]]>
</screen>
</example>
</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:"../../../../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
-->

View file

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<reference xml:id="ref.rar" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Rar &Functions;</title>
&reference.rar.entities.functions;
</reference>
<!-- 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:"../../../../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
-->

View file

@ -53,8 +53,9 @@ phpize
<section xml:id="rar.resources">
&reftitle.resources;
<para>
There is one resource used in Rar extension: a file descriptor returned
by <function>rar_open</function>.
This extension registers two internal classes:
The archive representations returned by <function>rar_open</function> and the
entry representations returned by <function>rar_list</function> and <function>rar_entry_get</function>.
</para>
</section>
<!-- }}} -->

View file

@ -3,28 +3,35 @@
<!--
Do NOT translate this file
-->
<versions>
<function name='RarEntry::extract' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getStream' from='PECL rar &gt;= 2.0.0'/>
<function name='RarEntry::getattr' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getattr' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getcrc' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getfiletime' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::gethostos' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getmethod' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getname' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getpackedsize' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getunpackedsize' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::getversion' from='PECL rar &gt;= 0.1'/>
<function name='RarEntry::isDirectory' from='PECL rar &gt;= 2.0.0'/>
<function name='RarEntry::isencrypted' from='PECL rar &gt;= 2.0.0'/>
<function name='RarEntry::__tostring' from='PECL rar &gt;= 2.0.0'/>
<function name='rar_close' from='PECL rar &gt;= 0.1'/>
<function name='rar_list' from='PECL rar &gt;= 0.1'/>
<versions>
<!-- Functions -->
<function name='rar_open' from='PECL rar &gt;= 0.1'/>
<function name='rar_list' from='PECL rar &gt;= 0.1'/>
<function name='rar_entry_get' from='PECL rar &gt;= 0.1'/>
<function name='rar_comment_get' from='PECL rar &gt;= 2.0.0'/>
<function name='rar_close' from='PECL rar &gt;= 0.1'/>
<!-- Methods -->
<function name='rararchive::open' from='PECL rar &gt;= 2.0.0'/>
<function name='rararchive::list' from='PECL rar &gt;= 2.0.0'/>
<function name='rararchive::getentry' from='PECL rar &gt;= 2.0.0'/>
<function name='rararchive::getcomment' from='PECL rar &gt;= 2.0.0'/>
<function name='rararchive::close' from='PECL rar &gt;= 2.0.0'/>
<function name='rararchive::__tostring' from='PECL rar &gt;= 2.0.0'/>
<function name='rarentry::extract' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getname' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getunpackedsize' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getpackedsize' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::gethostos' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getfiletime' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getcrc' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getattr' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getversion' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getmethod' from='PECL rar &gt;= 0.1'/>
<function name='rarentry::getstream' from='PECL rar &gt;= 2.0.0'/>
<function name='rarentry::isdirectory' from='PECL rar &gt;= 2.0.0'/>
<function name='rarentry::isencrypted' from='PECL rar &gt;= 2.0.0'/>
<function name='rarentry::__tostring' from='PECL rar &gt;= 2.0.0'/>
</versions>
<!-- Keep this comment at the end of the file
@ -46,4 +53,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
-->