# A classe RarEntry

(PECL rar >= 0.1)

## Introdução

Uma entrada RAR, representando um diretório ou arquivo compactado dentro de um arquivo RAR.

## Resumo da classe

final class RarEntry {
/* Constantes */
const int HOST_MSDOS = 0;
const int HOST_OS2 = 1;
const int HOST_WIN32 = 2;
const int HOST_UNIX = 3;
const int HOST_MACOS = 4;
const int HOST_BEOS = 5;
const int ATTRIBUTE_WIN_READONLY = 1;
const int ATTRIBUTE_WIN_HIDDEN = 2;
const int ATTRIBUTE_WIN_SYSTEM = 4;
const int ATTRIBUTE_WIN_DIRECTORY = 16;
const int ATTRIBUTE_WIN_ARCHIVE = 32;
const int ATTRIBUTE_WIN_DEVICE = 64;
const int ATTRIBUTE_WIN_NORMAL = 128;
const int ATTRIBUTE_WIN_TEMPORARY = 256;
const int ATTRIBUTE_WIN_SPARSE_FILE = 512;
const int ATTRIBUTE_WIN_REPARSE_POINT = 1024;
const int ATTRIBUTE_WIN_COMPRESSED = 2048;
const int ATTRIBUTE_WIN_OFFLINE = 4096;
const int ATTRIBUTE_WIN_NOT_CONTENT_INDEXED = 8192;
const int ATTRIBUTE_WIN_ENCRYPTED = 16384;
const int ATTRIBUTE_WIN_VIRTUAL = 65536;
const int ATTRIBUTE_UNIX_WORLD_EXECUTE = 1;
const int ATTRIBUTE_UNIX_WORLD_WRITE = 2;
const int ATTRIBUTE_UNIX_WORLD_READ = 4;
const int ATTRIBUTE_UNIX_GROUP_EXECUTE = 8;
const int ATTRIBUTE_UNIX_GROUP_WRITE = 16;
const int ATTRIBUTE_UNIX_GROUP_READ = 32;
const int ATTRIBUTE_UNIX_OWNER_EXECUTE = 64;
const int ATTRIBUTE_UNIX_OWNER_WRITE = 128;
const int ATTRIBUTE_UNIX_OWNER_READ = 256;
const int ATTRIBUTE_UNIX_STICKY = 512;
const int ATTRIBUTE_UNIX_SETGID = 1024;
const int ATTRIBUTE_UNIX_SETUID = 2048;
const int ATTRIBUTE_UNIX_FINAL_QUARTET = 61440;
const int ATTRIBUTE_UNIX_FIFO = 4096;
const int ATTRIBUTE_UNIX_CHAR_DEV = 8192;
const int ATTRIBUTE_UNIX_DIRECTORY = 16384;
const int ATTRIBUTE_UNIX_BLOCK_DEV = 24576;
const int ATTRIBUTE_UNIX_REGULAR_FILE = 32768;
const int ATTRIBUTE_UNIX_SYM_LINK = 40960;
const int ATTRIBUTE_UNIX_SOCKET = 49152;
/* Métodos */
public function extract(
string `$dir`,
string `$filepath` = "",
string `$password` = NULL,
bool `$extended_data` = `false`
): bool
public function getAttr(): int
public function getCrc(): string
public function getFileTime(): string
public function getHostOs(): int
public function getMethod(): int
public function getName(): string
public function getPackedSize(): int
public function getStream(string `$password` = ?): resource|false
public function getUnpackedSize(): int
public function getVersion(): int
public function isDirectory(): bool
public function isEncrypted(): bool
public function __toString(): string
}

## Constantes predefinidas

`RarEntry::HOST_MSDOS`
  Se o valor de retorno de RarEntry::getHostOs() for igual a esta constante, o MS-DOS foi usado para adicionar esta entrada. Use em vez de `RAR_HOST_MSDOS`.
`RarEntry::HOST_OS2`
  Se o valor de retorno de RarEntry::getHostOs() for igual a esta constante, o OS/2 foi utilizado para adicionar esta entrada. Destinado a substituir `RAR_HOST_OS2`.
`RarEntry::HOST_WIN32`
  Se o valor de retorno de RarEntry::getHostOs() for igual a essa constante, o Microsoft Windows foi usado para adicionar essa entrada. Destinado a substituir `RAR_HOST_WIN32`.
`RarEntry::HOST_UNIX`
  Se o valor de retorno de RarEntry::getHostOs() for igual a esta constante, um sistema operacional UNIX não especificado foi usado para adicionar esta entrada. Destinado a substituir `RAR_HOST_UNIX`.
`RarEntry::HOST_MACOS`
  Se o valor de retorno de RarEntry::getHostOs() for igual a esta constante, o Mac OS foi usado para adicionar esta entrada.
`RarEntry::HOST_BEOS`
  Se o valor de retorno de RarEntry::getHostOs() for igual a esta constante, o BeOS foi usado para adicionar esta entrada. Destinado a substituir `RAR_HOST_BEOS`.
`RarEntry::ATTRIBUTE_WIN_READONLY`
  Bit que representa uma entrada do Windows com um atributo somente leitura. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_HIDDEN`
  Bit que representa uma entrada do Windows com um atributo oculto. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_SYSTEM`
  Bit que representa uma entrada do Windows com um atributo oculto. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_DIRECTORY`
  Bit que representa uma entrada do Windows com um atributo de diretório (a entrada é um diretório). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows. Veja também RarEntry::isDirectory(), que também funciona com entradas que não foram adicionadas no WinRAR.
`RarEntry::ATTRIBUTE_WIN_ARCHIVE`
  Bit que representa uma entrada do Windows com um atributo de arquivo. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_DEVICE`
  Bit que representa uma entrada do Windows com um atributo de dispositivo. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_NORMAL`
  Bit que representa uma entrada do Windows com um atributo de arquivo normal (a entrada NÃO é um diretório). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows. Veja também RarEntry::isDirectory(), que também funciona com entradas que não foram adicionadas no WinRAR.
`RarEntry::ATTRIBUTE_WIN_TEMPORARY`
  Bit que representa uma entrada do Windows com um atributo temporário. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_SPARSE_FILE`
  Bit que representa uma entrada do Windows com um atributo de arquivo esparso (o arquivo é um arquivo esparso NTFS). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_REPARSE_POINT`
  Bit que representa uma entrada do Windows com um atributo de ponto de nova análise (a entrada é um ponto de nova análise NTFS, por exemplo, uma junção de diretório ou um sistema de arquivos de montagem). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_COMPRESSED`
  Bit que representa uma entrada do Windows com um atributo compactado (somente NTFS). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_OFFLINE`
  Bit que representa uma entrada do Windows com um atributo offline (a entrada está offline e não acessível). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_NOT_CONTENT_INDEXED`
  Bit que representa uma entrada do Windows com um atributo não indexado por conteúdo (a entrada deve ser indexada). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_ENCRYPTED`
  Bit que representa uma entrada do Windows com um atributo criptografado (somente NTFS). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_WIN_VIRTUAL`
  Bit que representa uma entrada do Windows com um atributo virtual. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é o Microsoft Windows.
`RarEntry::ATTRIBUTE_UNIX_WORLD_EXECUTE`
  Bit que representa uma entrada UNIX que é executável mundialmente. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_WORLD_WRITE`
  Bit que representa uma entrada UNIX que pode ser escrita mundialmente. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_WORLD_READ`
  Bit que representa uma entrada UNIX legível mundialmente. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_GROUP_EXECUTE`
  Bit que representa uma entrada UNIX executável em grupo. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_GROUP_WRITE`
  Bit que representa uma entrada UNIX que pode ser escrita em grupo. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_GROUP_READ`
  Bit que representa uma entrada UNIX legível em grupo. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_OWNER_EXECUTE`
  Bit que representa uma entrada UNIX executável pelo proprietário. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_OWNER_WRITE`
  Bit que representa uma entrada UNIX que pode ser escrita pelo proprietário. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_OWNER_READ`
  Bit que representa uma entrada UNIX legível pelo proprietário. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_STICKY`
  Bit que representa o sticky bit do UNIX. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_SETGID`
  Bit que representa o atributo setgid do UNIX. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_SETUID`
  Bit que representa o atributo setuid do UNIX. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX.
`RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET`
  Máscara para isolar os últimos quatro bits (nibble) dos atributos UNIX (_S_IFMT, o tipo de máscara de arquivo). Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX e com as constantes `RarEntry::ATTRIBUTE_UNIX_FIFO`, `RarEntry::ATTRIBUTE_UNIX_CHAR_DEV`, `RarEntry::ATTRIBUTE_UNIX_DIRECTORY`, `RarEntry::ATTRIBUTE_UNIX_BLOCK_DEV`, `RarEntry::ATTRIBUTE_UNIX_REGULAR_FILE`, `RarEntry::ATTRIBUTE_UNIX_SYM_LINK` e `RarEntry::ATTRIBUTE_UNIX_SOCKET`.
`RarEntry::ATTRIBUTE_UNIX_FIFO`
  FIFOs Unix terão atributos cujos últimos quatro bits possuem este valor. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX e com a constante `RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET`.
`RarEntry::ATTRIBUTE_UNIX_CHAR_DEV`
  Dispositivos de caracteres Unix terão atributos cujos últimos quatro bits possuem este valor. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX e com a constante `RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET`.
`RarEntry::ATTRIBUTE_UNIX_DIRECTORY`
  Os diretórios Unix terão atributos cujos últimos quatro bits possuem este valor. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX e com a constante `RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET`. Consulte também RarEntry::isDirectory(), que também funciona com entradas que foram adicionadas em outros sistemas operacionais.
`RarEntry::ATTRIBUTE_UNIX_BLOCK_DEV`
  Dispositivos de bloco Unix terão atributos cujos últimos quatro bits possuem este valor. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX e com a constante `RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET`.
`RarEntry::ATTRIBUTE_UNIX_REGULAR_FILE`
  Arquivos regulares Unix (não diretórios) terão atributos cujos últimos quatro bits possuem este valor. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX e com a constante `RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET`. Consulte também RarEntry::isDirectory(), que também funciona com entradas que foram adicionadas em outros sistemas operacionais.
`RarEntry::ATTRIBUTE_UNIX_SYM_LINK`
  Links simbólicos Unix terão atributos cujos últimos quatro bits possuem este valor. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX e com a constante `RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET`.
`RarEntry::ATTRIBUTE_UNIX_SOCKET`
  Os soquetes Unix terão atributos cujos últimos quatro bits possuem este valor. Para ser usado com RarEntry::getAttr() em entradas cujo sistema operacional host é UNIX e com a constante `RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET`.

## Índice

- RarEntry::extract — Extrai entrada do arquivo
- RarEntry::getAttr — Obtém atributos da entrada
- RarEntry::getCrc — Obtém CRC da entrada
- RarEntry::getFileTime — Obtém hora da última modificação da entrada
- RarEntry::getHostOs — Obtém sistema operacional host de entrada
- RarEntry::getMethod — Obtém método pack da entrada
- RarEntry::getName — Obtém o nome da entrada
- RarEntry::getPackedSize — Obtém o tamanho compactado da entrada
- RarEntry::getStream — Obtém manipulador de arquivo para entrada
- RarEntry::getUnpackedSize — Obtém o tamanho descompactado da entrada
- RarEntry::getVersion — Obtém a versão mínima do programa RAR necessária para descompactar a entrada
- RarEntry::isDirectory — Testa se uma entrada representa um diretório
- RarEntry::isEncrypted — Testa se uma entrada está criptografada
- RarEntry::__toString — Obtém representação em texto da entrada

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open