怎么用php向服务器已存在的zip文件中增加一个文件

怎么用php向服务器已存在的zip文件中增加一个文件,第1张

加一个zip模块进去

使用方式如下:

<?php

$zip = new ZipArchive()

$filename = "./test112.zip"

if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {

exit("cannot open <$filename>")

}

$zip->addFromString("testfilephp.txt" . time(), "#1 This is a test string added as testfilephp.txt. ")

$zip->addFromString("testfilephp2.txt" . time(), "#2 This is a test string added as testfilephp2.txt. ")

$zip->addFile($thisdir . "/too.php","/testfromfile.php")

echo "numfiles: " . $zip->numFiles . " "

echo "status:" . $zip->status . " "

$zip->close()

?>

phpmyadmin支持导入zip数据库方法:

开启phpmyadmin对zip文件的支持,首先你的PHP需要安装有zip扩展。

打开phpmyadmin配置文件config.inc.php。

加入如下代码:$cfg['ZipDump'] = TRUE。

重启apache服务器

随着PHP项目的数据量增加,需要经常对数据库进行周期备份,这涉及到MySQL的导入和导出工作。默认mysql只能导入2M的数据,下面介绍一下解决mysql的导入数据2M大小的限制。

修改 php.ini 文件中下列3项的值:

upload_max_filesize,上传文件大小

memory_limit 设置内存

post_max_size 提交数据的最大值

修改为想改的大小值。

在 phpMyAdmin 的配置文件中修改或加入这个设置:

这个文件一般是在phpMyAdmin目录下的config.inc.php文件

$cfg['ExecTimeLimit'] = 0// maximum execution time in seconds (0 for no limit)

默认为300秒钟,改为0表示不受限制。

php将文件夹打包成zip文件,参考代码如下:

function addFileToZip($path,$zip){

    $handler=opendir($path) //打开当前文件夹由$path指定。

    while(($filename=readdir($handler))!==false){

        if($filename != "." && $filename != ".."){//文件夹文件名字为'.'和‘..’,不要对他们进行 *** 作

            if(is_dir($path."/".$filename)){// 如果读取的某个对象是文件夹,则递归

                addFileToZip($path."/".$filename, $zip)

            }else{ //将文件加入zip对象

                $zip->addFile($path."/".$filename)

            }

        }

    }

    @closedir($path)

}

$zip=new ZipArchive()

if($zip->open('images.zip', ZipArchive::OVERWRITE)=== TRUE){

    addFileToZip('images/', $zip) //调用方法,对要打包的根目录进行 *** 作,并将ZipArchive的对象传递给方法

    $zip->close() //关闭处理的zip文件

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7942598.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-11
下一篇2023-04-11

发表评论

登录后才能评论

评论列表(0条)

    保存