Archive_Tar::listContent()

Archive_Tar::listContent() – アーカイブにあるファイルとディレクトリをリストする

Synopsis

require_once 'Archive/Tar.php';

array listContent ( )

Description

アーカイブのファイルとディレクトリをリストします。

Return value

array - それぞれの配列エントリは、ファイルもしくはフォルダを表します。 配列はソートされませんので、 インデックスはアーカイブにあるファイルやディレクトリの位置を表します。

それぞれのエントリは以下の情報を含みます:

  • $file['filename'] - ファイルやディレクトリの名前とパス

  • $file['mode'] - ファイルの権限 (fileperms() の結果)

  • $file['uid'] - ユーザー ID

  • $file['gid'] - グループ ID

  • $file['size'] - ファイルサイズ

  • $file['mtime'] - 最終更新時刻 (filemtime() の結果)

  • $file['typeflag'] - 空はファイル、"5" はディレクトリを表す

Throws

Possible PEAR_Error values
エラーコード エラーメッセージ 理由 解決法
NULL " Unable to open in read mode archive " ファイルが他のアプリケーションによって排他的にロックされています。 当該ファイルを使用している他のアプリケーションを確認してください。 これは競合する Archive_Tar でアーカイブを処理している場合は発生しません。
NULL " Invalid listcontent mode mode " 実装エラーです。 発生しないはずですが、その場合はバグレポートをお願いします。
NULL " Directory name already exists as a file " そのファイルはアーカイブ中でディレクトリとしてマークされています。 壊れたアーカイブなのかも知れません
NULL " File name already exists as a directory " そのディレクトリはアーカイブ中でファイルとしてマークされています。 壊れたアーカイブなのかも知れません
NULL " File name already exists and is write protected. " アーカイブは伸長先ディレクトリにすでに存在しているファイルを 含んでおり、上書きすることができません。 空のディレクトリにアーカイブを伸長してください。
NULL " Unable to create path for name " 1 つもしくはそれ以上のネストした新規ディレクトリは 伸長先ディレクトリに生成できません。 伸長先ディレクトリと全てのネストしたディレクトリが 要求される権限を持っているか確認してください。
NULL " Unable to create directory name " ディレクトリを伸長先ディレクトリに生成することができませんでした。 伸長先ディレクトリに要求される権限を持っているか確認してください。
NULL " Error while opening name in write binary mode " ファイルを生成することができませんでした。 ファイルがロックされているかも知れません。
NULL " Extracted file filename does not have the correct file size filesize (size expected). Archive may be corrupted. " メッセージを参照してください。 メッセージを参照してください。

Note

This function can not be called statically.

Example

アーカイブの内容をリストする

<?php
$tar_object 
= new Archive_Tar("tarname.tar");

if ((
$v_list  =  $tar_object->listContent()) != 0) {
    for (
$i=0$i<sizeof($v_list); $i++) {
        echo 
"Filename :'".$v_list[$i]['filename']."'<br>";
        echo 
" .size :'".$v_list[$i]['size']."'<br>";
        echo 
" .mtime :'".$v_list[$i]['mtime']."' (".
             
date("l dS of F Y h:i:s A"$v_list[$i]['mtime']).")<br>";
        echo 
" .mode :'".$v_list[$i]['mode']."'<br>";
        echo 
" .uid :'".$v_list[$i]['uid']."'<br>";
        echo 
" .gid :'".$v_list[$i]['gid']."'<br>";
        echo 
" .typeflag :'".$v_list[$i]['typeflag']."'<br>";
   }
}
?>
新規ディレクトリにファイルを伸長する (Previous) 1 つのファイルを伸長し文字列として返す (Next)
Last updated: Thu, 18 Dec 2014 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

There are no user contributed notes for this page.