Manuel PHP
Précédent |  | Suivant

# CXXXIII. Rar

# Introduction

Rar est un mécanisme d'archivage puissant et efficace, créé par Eugene Roshal. Cette extension vous donne la possibilité de lire des archives Rar, mais pas de créer des archives Rar, car ce n'est pas supporté par la bibliothèque, et c'est explicitement interdit par la licence.

Plus d'informations sur Rar et UnRar sont disponibles sur http://www.rarlabs.com/.

# Pré-requis

Ces fonctions sont disponibles dans le module PHP standard, qui est toujours accessible.

# Configuration à l'exécution

Cette extension ne définit aucune directive de configuration.

# Installation

Rar est actuellement disponible via PECL http://pecl.php.net/package/rar.

Vous pouvez utiliser l'installeur PECL pour installer l'extension Rar, avec la commande suivante : pecl -v install rar.

Vous pouvez aussi télécharger le paquet tar.gz, et installer Rar manuellement :

Exemple 1. Installation de Rar

    gunzip rar-xxx.tgz
    tar -xvf rar-xxx.tar
    cd rar-xxx
    phpize
    ./configure && make && make install

Les utilisateurs Windows peuvent télécharger l'extension DLL `php_rar.dll` ici : http://snaps.php.net/win32/PECL_STABLE/.

# Types de ressources

Il y a une ressource, utilisée par l'extension Rar : un pointeur de fichier, retourné par rar_open().

# Constantes pré-définies

`RAR_HOST_MSDOS` (entier)

`RAR_HOST_OS2` (entier)

`RAR_HOST_WIN32` (entier)

`RAR_HOST_UNIX` (entier)

`RAR_HOST_BEOS` (entier)

# Exemples

Exemple 2. Exemple avec l'extension Rar

`<?php
$rar_file = rar_open('exemple.rar')
or die("Impossible d'ouvrir l'archive Rar");
$entries = rar_list($rar_file);
foreach ($entries as $entry) {
echo 'Nom du fichier : ' . $entry->getName() . "\n";
echo 'Taille du fichier : ' . $entry->getPackedSize() . "\n";
echo 'Taille du fichier décompressé : ' . $entry->getUnpackedSize() . "\n";
$entry->extract('/dossier/extraction/');
}
rar_close($rar_file);
?>`

Cet exemple ouvre une archive Rar, et extrait chaque élément du dossier.

Précédent | Sommaire | Suivant
radius_strerror | Niveau supérieur | rar_close