Home  >  Article  >  Backend Development  >  How to install pear extension and decompression techniques for PHP

How to install pear extension and decompression techniques for PHP

墨辰丷
墨辰丷Original
2018-06-05 09:38:412230browse

This article mainly introduces how to install pear extension and decompression techniques in PHP. Interested friends can refer to it. I hope it will be helpful to everyone.

1. Use PHP’s own compression and archiving extension (phar)

##

$phar = new PharData('song.tar.gz');
//路径 要解压的文件 是否覆盖
$phar->extractTo('c:/tmp', null, true);

2. First, you need to install the pear management tool

Under Linux

/usr/local/php/bin/pear install Archive_Tar

wamp does not install pear by default. go-pear.php is suitable for older versions, php5.3 needs to download go-pear.phar

Put the downloaded file in the php directory (any directory is acceptable) and execute php go-pear .phar command, press enter according to the prompt

①、Install

#这个类实际安装pear时默认就会安装
pear install archive_tar

②、

/**
原理:tar压缩包前512字节有自己的固定格式,根据这512个字节可以获取压缩包的文件名,大小等信息
在配合 gzopen,gzread 便可以解压gz格式
 */
$tar_object = new Archive_Tar("song.tar.gz");
$tar_object->extract('c:/tmp', true);

3. PHP calls external commands to perform decompression

//必须等命令执行完成,脚本才会推出,popen命令并非异步去执行
error_reporting(E_ALL);
ini_set("display_errors", 1);
$handle = popen("tar -xzvf song.tar.gz 2>&1", 'r');
/*
while(!feof($handle)) {
set_time_limit(3);
  $buffer = fgets($handle);
  echo "$buffer\n";
  ob_flush();
  flush();
}*/
echo "start \n";
pclose($handle);
echo "end \n";

Summary: The above is the entire content of this article, I hope it will be helpful to everyone's study.

Related recommendations:

Detailed explanation of php file upload class examples

##php html5 ajax method and example for uploading images


## Methods and meanings of implementing singleton pattern in PHP


##

The above is the detailed content of How to install pear extension and decompression techniques for PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn