RarEntry
PHP Manual

RarEntry::getAttr

(PECL rar >= 0.1)

RarEntry::getAttr — Récupère les attributs d'une entrée

Description

public int RarEntry::getAttr ( void )

Retourne les attributs dépendants de l'OS d'une entrée d'une archive.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Retourne les attributs ou FALSE si une erreur survient.

Exemples

Exemple #1 Exemple avec RarEntry::getAttr()

<?php

$rar_file 
= rar_open('example.rar') or die("Impossible d'ouvrir l'archive RAR");

$entry = rar_entry_get($rar_file, 'dir/in/the/archive') or die("L'entrée demandée n'existe pas !");

$host_os = $entry->getHostOs();
$attr = $entry->getAttr();

switch(
$host_os) {
    case 
RAR_HOST_MSDOS:
    case 
RAR_HOST_OS2:
    case 
RAR_HOST_WIN32:
    case 
RAR_HOST_MACOS:
        
printf("%c%c%c%c%c%c\n",
                (
$attr & 0x08) ? 'V' : '.',
                (
$attr & 0x10) ? 'D' : '.',
                (
$attr & 0x01) ? 'R' : '.',
                (
$attr & 0x02) ? 'H' : '.',
                (
$attr & 0x04) ? 'S' : '.',
                (
$attr & 0x20) ? 'A' : '.');
        break;
    case 
RAR_HOST_UNIX:
    case 
RAR_HOST_BEOS:
        switch (
$attr & 0xF000)
        {
            case 
0x4000:
                
printf("d");
                break;
            case 
0xA000:
                
printf("l");
                break;
            default:
                
printf("-");
                break;
        }
        
printf("%c%c%c%c%c%c%c%c%c\n",
                (
$attr & 0x0100) ? 'r' : '-',
                (
$attr & 0x0080) ? 'w' : '-',
                (
$attr & 0x0040) ? (($attr & 0x0800) ? 's':'x'):(($attr & 0x0800) ? 'S':'-'),
                (
$attr & 0x0020) ? 'r' : '-',
                (
$attr & 0x0010) ? 'w' : '-',
                (
$attr & 0x0008) ? (($attr & 0x0400) ? 's':'x'):(($attr & 0x0400) ? 'S':'-'),
                (
$attr & 0x0004) ? 'r' : '-',
                (
$attr & 0x0002) ? 'w' : '-',
                (
$attr & 0x0001) ? 'x' : '-');
        break;
}

rar_close($rar_file);

?>

Voir aussi


RarEntry
PHP Manual