Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : Rar Functions : Rar::getAttr

Rar::getAttr

Get attributes of the entry ()

Example 2058. Rar::getAttr() example

<?php

$rar_file
= rar_open('example.rar') or die("Can't open Rar archive");

$entry = rar_entry_get($rar_file, 'dir/in/the/archive') or die("Can't find such entry");

$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);

?>

Related Examples ( Source code ) » rar_getattr











Change Language


Follow Navioo On Twitter
rar_close
rar_entry_get
Rar::extract
Rar::getAttr
Rar::getCrc
Rar::getFileTime
Rar::getHostOs
Rar::getMethod
Rar::getName
Rar::getPackedSize
Rar::getUnpackedSize
Rar::getVersion
rar_list
rar_open
eXTReMe Tracker