Archive_Tar::listContent()

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

概要

require_once 'Archive/Tar.php';

array listContent ()

説明

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

返り値

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

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

例外・エラー

表 38-1PEAR_Error の値

エラーコードエラーメッセージ理由解決法
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. " メッセージを参照してください。 メッセージを参照してください。

注意

この関数は、スタティックにコールする ことはできません。

例 38-1アーカイブの内容をリストする


<?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>";
   }
}
?>