Archive_Tar::extractModify()

Archive_Tar::extractModify() -- 新規ディレクトリにファイルを伸長する

概要

require_once 'Archive/Tar.php';

boolean extractModify (string $path, string $remove_path)

説明

このメソッドはアーカイブの全ての内容を path で指定されたディレクトリに伸長します。 ファイルやディレクトリの記録されたパスが該当する場合、 ファイルやディレクトリパスの最初にある remove_path が削除されます。

ファイルを伸長している間、ファイルがすでに存在する場合は、 最終更新日を確認することなく置換されます。 もしファイルがすでに存在しており書き込み保護されている場合、 伸長は中止されます。 もし同名のディレクトリがすでに存在する場合、伸長は中止されます。

ディレクトリを伸長している間、同名のファイルがすでに存在している場合は 伸長が中止されます。 ファイルやディレクトリを伸長している間、伸長先のディレクトリが存在し かつ書き込み保護されている、もしくは存在しないかつ作成できない場合、 伸長は中止されます。 もし伸長後のファイルが正しいファイルサイズではない場合、 伸長は中止されます。

パラメータ

返り値

boolean - 成功時には TRUE 、 失敗時には FALSE を返します。

例外・エラー

表 44-1PEAR_Error の値

エラーコードエラーメッセージ理由解決法
NULL " Unable to open in read mode archive " ファイルが他のアプリケーションによって排他的にロックされています。 当該ファイルを使用している他のアプリケーションを確認してください。 これは競合する Archive_Tar でアーカイブを処理している場合は発生しません。
NULL " Unable to open in write mode archive " ファイルが他のアプリケーションによってロックされています。 当該ファイルを使用している他のアプリケーションを確認してください。 これは競合する Archive_Tar でアーカイブを処理している場合に発生するかも知れません。
NULL " Invalid extractmodify 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. " メッセージを参照してください。 メッセージを参照してください。

注意

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