- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
如何在不使用 exec('tar')
或任何其他命令的情况下使用纯 PHP 在 php 中解压缩文件?
我的问题如下;我有一个 26mb 的 tar.gz 文件需要上传到我的服务器并解压缩。我试过用net2ftp解压,但不支持tar.gz上传后解压。
我使用的是免费网络主机,所以他们不允许任何 exec()
命令,也不允许访问提示。那么我将如何解开它呢?
PHP 有内置命令吗?
最佳答案
从 PHP 5.3.0 开始,您不需要使用 Archive_Tar
。
有一个新的类可以处理 tar 存档:The PharData class .
提取文件(使用 PharData::extractTo()
,其工作方式类似于 ZipArchive::extractTo()
):
try {
$phar = new PharData('myphar.tar');
$phar->extractTo('/full/path'); // extract all files
} catch (Exception $e) {
// handle errors
}
如果您有 tar.gz 存档,只需在解压前解压缩(使用 PharData::decompress()
):
// decompress from gz
$p = new PharData('/path/to/my.tar.gz');
$p->decompress(); // creates /path/to/my.tar
// unarchive from the tar
$phar = new PharData('/path/to/my.tar');
$phar->extractTo('/full/path');
关于没有 exec() 的 PHP Untar-gz?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9416508/
这似乎是一个非常简单的问题,但对于我来说我无法弄清楚。 我想做的就是解压缩并提取 tar.gz 文件的内容。在 godoc 上,似乎有一个函数的引用正是这样做的。 (https://godoc.org
不久前,我使用 Linux“tar -cf”命令压缩了一个应用程序。当时一些文件名使用的是不同的语言。 现在,当我使用“tar -xf”解压缩时,它会将另一种语言的文件名显示为问号。 有没有办法在我解
我正在编写一个 iPhone 应用程序,它从网络服务器下载一个 tar-gzip 压缩文件,然后需要解压该文件,以便将其复制到应用程序的 Documents 文件夹中。 我使用 tar/gzip 是因
我是 R 编程语言的新手,并且遇到了一些基本问题。我想解压缩一个文件,但它对我不起作用。 这是我输入的代码: untar("CD_data.tar", exdir="data") 然后它返回以下错误消
如何在不使用 exec('tar') 或任何其他命令的情况下使用纯 PHP 在 php 中解压缩文件? 我的问题如下;我有一个 26mb 的 tar.gz 文件需要上传到我的服务器并解压缩。我试过用n
我想要执行与此 shell 脚本等效的操作: ssh visarend.solasistim.net tar -c /home/amoe/episodes | tar -vx - 但是使用 Fabri
我目前正在将 CVS 存储库转换为多个 git 存储库。 cvs2git 进程很好,但是我在运行 filter-branch 命令时遇到了问题。我使用简单的脚本测试命令,因为主存储库大小为 4Go,提
情况是这样的。我有一个需要提取和设置的 URL 列表。它都是变量驱动的,但在我提取后,我不知道我的文件夹将被称为什么。如果我不知道它叫什么,我就不能 CD 进去。 $DL_DIR = /opt/ $U
尝试安装 Bower 时出现此错误。这是一个错误还是我做错了? 如果需要,我还有 4707 行 npm-debug.log 文件... 谢谢! 这是尝试在本地安装 Bower 时终端的转储,但我在全局
我正在从 USGS 订购一大堆陆地卫星场景,这些场景作为 tar.gz 存档。我正在编写一个简单的 python 脚本来解压缩它们。每个文件包含 15 张大小为 60-120 MB 的 tiff 图像
我在 EC2 Linux AMI 实例上尝试使用 CPAN 安装各种 CPAN 模块。从典型安装开始(YAML 只是一个示例)... sudo yum install perl-CPAN Packag
我在 Mac 上创建了一个新用户并尝试了此操作。这通常适用于我的其他帐户。这个新用户也是管理员。 npm ERR! tar.unpack untar error /Users/test/.npm/
我有一个包含小型 git 存储库的目录。 git status 和 gitk --all,显示没有未提交的更改。 如果我用 tar/compress 这个目录: tar czf git-repo.ta
我是一名优秀的程序员,十分优秀!