使用 PHP,我正在开发一个 CMS。这需要支持网站备份。
必须:
- 压缩的 ZIP 文件夹
- 必须至少在 Linux 和 Windows 上工作
- 必须在 PHP 5.0 上工作,PHP 4 会很好
- 我只需要一个函数/类,不要链接我的开源软件,因为我需要自己做
- CMS 不需要 MySQL 备份,因为它是 XML 驱动的
我已经在 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;
}
?>