PHPを使ってCMSを開発しています。これは、Web サイトのバックアップをサポートする必要があります。
必須:
- 圧縮された ZIP フォルダ
- 少なくとも Linux と Windows で動作する必要があります
- PHP 5.0 で動作する必要があります。PHP 4 が適しています。
- 関数/クラスが必要なだけです。これは自分で行う必要があるため、オープンソース ソフトウェアをリンクしないでください。
- CMS は XML を利用しているため、MySQL バックアップは必要ありません。
PHPでZipArchiveにチェックインしました。これが私がこれまでに得たすべてです。しかし、作成されたというサーバー上の ZIP ファイルにアクセスしようとすると、404? が表示されます。機能していません。その理由はわかりません。
<?php
$filename = CONTENT_DIR . 'backups/' . date( 'm-d-Y_H-i-s' ) . '.zip';
if ( $handle = opendir( ABS_PATH ) ) {
$zip = new ZipArchive();
if ( $zip->open( $filename, ZIPARCHIVE::CREATE ) !== true ) {
exit( "cannot open <$filename>\n" );
}
$string = '';
while ( ( $file = readdir( $handle ) ) !== false ) {
$zip->addFile( $file );
$string .= "$file\n<br>";
}
closedir( $handle );
$string .= "Status of the Zip Archive: " . $zip->status;
$string .= "<br>System status of the Zip Archive: " . $zip->statusSys;
$string .= "<br>Number of files in archive: " . $zip->numFiles;
$string .= "<br>File name in the file system: " . $zip->filename;
$string .= "<br>Comment for the archive: " . $zip->comment;
$zip->close();
echo $string;
}
?>