PHP开发笔记系列(七)- 压缩与解压缩
?
??? 压缩与解压缩,在一般的web应用程序中可能用得不多,但是在下面的一些应用场景中是比较常用的,例如压缩数据库的备份文件,将多个文件打包在一块进行下载,将客户打包上传的文件进行加压然后进行解释,熟悉压缩与解压缩的常用函数和类,还是必要的。
??? 本文《PHP开发笔记系列(七)- 压缩与解压缩》 将是《PHP开发笔记系列(XAMPP+PhpEclipse+XDebug)》 的第七篇,讲述如何使用Pear插件Archive Tar进行常规的文件压缩与解压缩操作。
??? 1. 使用Archive_Tar类进行文件压缩
???? Archive_Tar类位于Pear文件夹的Archive/Tar.php文件中,使用该类进行文件压缩所需代码量很少。步骤是:1)实例化该类,第一个构造参数是压缩后的目标文件名,第二个构造参数是压缩类型(gz:使用gzip压缩,bz2使用bzip2压缩),省略第二个参数则表示只打包不压缩;2)创建完Archive_Tar对象后,向该对象的create方法传入文件名数据,即可。代码如下:
???
file:tar.phpurl:http://localhost:88/archive/tar.php<?php require_once 'Archive/Tar.php'; $tarFile = 'xdebug.tar.gz'; $tar = new Archive_Tar($tarFile, 'gz'); $files = array('xdebug.ini', 'file.html'); $tar->create($files); echo 'xdebug.tar.gz exist:'.file_exists($tarFile).'<br/>'; echo 'xdebug.tar.gz mtime:'.date('Y-m-d h-i:s', filemtime($tarFile)).'<br/>'; echo 'xdebug.tar.gz :atime:'.date('Y-m-d h-i:s', fileatime($tarFile)).'<br/>'; echo 'xdebug.tar.gz size:'.filesize($tarFile).'<br/>';?>
?
??? 2. 使用Archi ve_Tar类进行文件压缩
? ? 解压缩的过程与压缩过程相似,步骤如下:1)实例化Archive_Tar对象,传入源压缩文件名,2)实例化完对象后,给解压缩的方法extract传入一个目标文件夹名称,压缩包中的文件将被释放到该目标文件夹下。代码如下:
?
file:extract.phpurl:http://localhost:88/archive/extract.php<?php require_once 'Archive/Tar.php'; $targetDir = 'xdebug'; $tarFile = 'xdebug.tar.gz'; $tar = new Archive_Tar($tarFile); $tar->extract($targetDir); $dp = opendir($targetDir); while ($entry = readdir($dp)){ if(is_dir($entry)) { echo '[DIR] '.$entry. '<br/>'; }elseif (is_file($entry)) { echo '[FILE] '.$entry. '<br/>'; } } closedir($dp);?>
?
?
?
??? 本文地址:http://ryan-d.iteye.com/blog/1543417

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

在Ubuntu22.04上安装Linux内核可以按照以下步骤进行操作:更新系统:首先,确保你的Ubuntu系统是最新的,执行以下命令更新系统软件包:sudoaptupdatesudoaptupgrade下载内核文件:访问Linux内核官方网站()下载所需的内核版本。选择一个稳定版本并下载源代码文件(以.tar.gz或.tar.xz为扩展名),例如:wget解压文件:使用以下命令解压下载的内核源代码文件:tar-xflinux-5.14.tar.xz安装构建依赖:安装构建内核所需的工具和依赖项。执

尽管Windows11允许您从多种存档格式中提取文件,但创建它们仅限于ZIP,也就是说,直到现在。Windows11现在还允许您本地创建7Z和TAR存档文件,这可以像普通ZIP文件一样完成,而无需依赖第三方工具。如何在没有第三方软件的情况下在Windows11上创建7Z和TAR存档文件早些时候,Windows11获得了对提取各种存档文件格式的支持,包括.rar、.7z、.tgz、.tar.gz、.tar.bz2等等。但是,创建它们仅限于ZIP存档。但是,对将文件压缩为7Z和TAR存档文件格式的本

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

是的,像XDebug这样的调试器会降低PHP服务器的性能。这就是调试器不放置在服务器环境中的原因。它们部署在不同的环境中,以避免不必要的开销。调试消息无法在已处于生产阶段的应用程序中显示。当将调试行为添加到服务器上,调试引擎附加到PHP进程。它开始接收消息以在断点处停止,但这不是必需的行为,因为它会给其他进程带来高性能打击,从而停止PHP解析器。另一方面,当调试器安装后,它们往往会在服务器中打开端口,因为它们不打算在生产环境中使用。在服务器中打开端口就像为黑客打开一扇窥探之门一样糟糕。

在PHP中,可以利用implode()函数的第一个参数来设置没有分隔符,该函数的第一个参数用于规定数组元素之间放置的内容,默认是空字符串,也可将第一个参数设置为空,语法为“implode(数组)”或者“implode("",数组)”。

转化方法:1、使用“mb_substr($url,stripos($url,"?")+1)”获取url的参数部分;2、使用“parse_str("参数部分",$arr)”将参数解析到变量中,并传入指定数组中,变量名转为键名,变量值转为键值。

去除方法:1、使用substr_replace()函数将首位数字替换为空字符串即可,语法“substr_replace($num,"",0,1)”;2、用substr截取从第二位数字开始的全部字符即可,语法“substr($num,1)”。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

禅工作室 13.0.1
功能强大的PHP集成开发环境

SublimeText3汉化版
中文版,非常好用

SublimeText3 Linux新版
SublimeText3 Linux最新版

记事本++7.3.1
好用且免费的代码编辑器

Dreamweaver CS6
视觉化网页开发工具