PHP调用Linux的命令行执行文件压缩命令_PHP
前几天工作中,需要将3个txt文件,打包成*.zip down到本地……
一开始,我和普通青年一样,想到用PHP内置的 ZipArchive,代码看起来应该是这样的:
复制代码 代码如下:
/*拆分成3个txt文件 分别是wow_1.txt wow_2.txt 和 wow_3.txt*/
$zip=new ZipArchive();
$zipfile='./Exl_file/wow.zip';
if($zip->open($zipfile,ZIPARCHIVE::CREATE)===TRUE){
$zip->addFile('./Exl_file/wow_1.txt','wow_1.txt');
$zip->addFile('./Exl_file/wow_2.txt','wow_2.txt');
$zip->addFile('./Exl_file/wow_3.txt','wow_3.txt');
$zip->close();
//下载输出文件后删除相关文件
}else{
echo "ZIP生成失败!";
}
可是纠结的是正式环境上没安装zip扩展,ZipArchive直接没法用,代码绝对比在上面装个扩展要来的快——用PHP调用Linux的命令行 ,执行压缩命令,OK,马上行动!
复制代码 代码如下:
/*拆分成3个txt文件 分别是wow_1.txt wow_2.txt 和 wow_3.txt全部放到 Exl_file 目录下*/
$outputs=array();
/*用php的exec执行Linux命令 括号里的字符串就是你在Linux命令窗口里敲的命令;
第二个参数是linux执行该命令后返回的结果数组;
linux执行返回的每一条结果依次存入该数组
第三个参数是结果,如果执行成功,则Linux返回结果值为0,如果执行失败,则结果值不为0
*/
exec("zip ./Exl_file/wow.zip ./Exl_file/wow_1.txt ./Exl_file/wow_2.txt ./Exl_file/wow_3.txt",$outputs,$rc);
if($rc!=0){
foreach ($outputs as $ko=>$vo){
echo "$vo
";
}
}else{
$zipfile='./Exl_file/wow.zip';
//文件下载输出后删除相关文件
}
}
你可以把if($rc!=0)改成if(1==1)查看Linux执行命令返回的结果行,如下图:
复制代码 代码如下:
adding: Exl_file/wow_1.txt (deflated 96%)
adding: Exl_file/wow_2.txt (deflated 97%)
adding: Exl_file/wow_3.txt (deflated 97%)
可以看到执行返回的信息全部输入到了 $outputs 数组中,*.zip文件生成成功。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











ご存知のように、7-zip は完全に無料の圧縮および解凍ソフトウェアです。他の圧縮ソフトウェアと比較して、その圧縮速度は速く、圧縮率も優れています。多くのユーザーは、7-zip ソフトウェアがどのようにして大きなファイルを最大サイズまで圧縮できるのか疑問に思っています。最小サイズです。この質問に対し、編集者はこう答えた。 7-zip ソフトウェアはどのようにして大きなファイルを最小サイズに圧縮しますか?まず、7-zip ソフトウェアをコンピュータにダウンロードしてインストールします。次に、圧縮するファイルを右クリックし、ソース ファイルのサイズを表示して記録します。次に、ファイルを再度右クリックし、「7-zip-アーカイブに追加」を選択します。 「圧縮パッケージに追加」というウィンドウが表示されます。 2. 次に、圧縮ウィンドウで圧縮形式を設定し、圧縮レベルとして最大圧縮を選択します。

コンピューター技術の継続的な発展に伴い、ファイル処理はコンピューター ユーザーの日常業務に不可欠な部分になりました。ファイル ストレージの量が増加し続けるにつれて、ファイルの圧縮は非常に必要な操作になっています。このプロセスでは、ファイルの圧縮と解凍に Go 言語を使用することが大きな関心事となっています。 Go 言語自体は、ファイル操作を処理するための関連ツール関数を含む豊富な標準ライブラリを提供します。ファイルの圧縮および解凍操作に Go 言語を使用することが他の言語と比較されるのはまさにこのためです。

PHP を使用して単純なファイル圧縮関数を開発する方法の概要: ファイル圧縮は一般的に使用されるテクノロジであり、ファイルのサイズを削減することで、ファイル転送効率が向上し、ストレージ領域が節約され、ファイルのバックアップと共有が容易になります。この記事では、PHPをベースにした簡単なファイル圧縮関数を開発し、ファイルを圧縮・解凍することでファイルの圧縮・解凍操作を実現する方法を紹介します。手順: PHP ファイルを作成する: まず、compress.php という名前の PHP ファイルを作成します。圧縮ファイル:com上

Win10で右クリックしてもファイルが圧縮されない場合はどうすればよいですか? win10 システムを使用すると、さまざまな小さな問題がよく発生しますが、win10 システムをダウンロードしてインストールした後、一部の友人は、win10 システムにはファイル圧縮機能がないため、ファイルを圧縮および解凍する機能がないことに気付きました。では、この問題を解決するにはどうすればよいでしょうか? 以下のエディターが、Win10 での右クリック時のファイル圧縮の問題を解決する方法に関するチュートリアルをまとめています。興味がある場合は、エディターに従って以下をお読みください。 Win10 の右クリックとファイル圧縮なしのソリューション チュートリアルで winrar プログラムを開くか、新しい空のパッケージを作成してそれを開き、ツールバーの [オプション] の下にある [設定] をクリックするか、直接ショートカット [Ctrl+S] を押して設定インターフェイスを開きます。 ; 次に、デフォルトの「全般」タブから最後の項目「総合」に切り替えます。

Java 開発におけるファイルの圧縮と解凍の同時パフォーマンスを最適化する方法 インターネットの急速な発展に伴い、大量のデータ交換とストレージが今日の情報時代の重要な部分になりました。このプロセスでは、データ転送効率を向上させ、ストレージ領域を節約するために、データの圧縮と解凍が必要になることがよくあります。 Java 開発では、ファイルの圧縮と解凍に圧縮アルゴリズムがよく使用されます。ただし、大量のファイルを処理する場合は、プログラムの実行効率を向上させるために同時実行パフォーマンスの最適化を考慮する必要があります。この記事ではそのメリットをいくつか紹介します

Python3.x でファイルの圧縮と解凍に gzip モジュールを使用する方法 はじめに: 日常の開発では、ファイルの圧縮と解凍が必要になることがよくあります。 Python の gzip モジュールは、ファイルの処理時に gzip 圧縮および解凍操作を実行するための便利で簡潔な API を提供します。この記事では、gzip モジュールを使用してファイルを圧縮および解凍する方法と、対応するコード例を紹介します。圧縮ファイル: gzip モジュールの GzipFile クラスは圧縮ファイルを提供します

Linux コマンド ライン ツールを使用してログを解析およびフィルタリングするにはどうすればよいですか? Linux 環境では、特定の情報を見つけたり、問題のトラブルシューティングを行ったりするために、システム ログを解析およびフィルタリングする必要があることがよくあります。これらのタスクは、コマンド ライン ツールを使用して効率的に実行できます。この記事では、ログの解析とフィルタリングに一般的な Linux コマンド ライン ツールを使用する方法を紹介します。 grep コマンド grep は、ファイルまたは標準入力から特定のパターンに一致する行を検索し、結果を出力できる強力なテキスト検索ツールです。以下はグレです

C++ 開発でファイル圧縮速度を最適化する方法 はじめに: インターネットとモバイル デバイスの普及に伴い、ファイル転送の頻度はますます高くなっています。送信時間とネットワーク帯域幅の消費を削減するために、ファイル圧縮は一般的な処理方法になっています。 C++ は高性能プログラミング言語として、ファイル圧縮ツールの開発に広く使用されています。ただし、C++ 開発におけるファイル圧縮速度を最適化する方法は、依然として解決する必要がある問題です。この記事では、アルゴリズムの最適化、ハードウェアの最適化、マルチスレッドの最適化の 3 つの側面からファイル圧縮の速度を向上させる方法を紹介します。
