最新のインターネット アプリケーションでは、オーディオ ファイルの圧縮と管理が一般的な要件です。 PHP は、圧縮パッケージ内のオーディオ ファイルを簡単に圧縮および解凍できる ZipArchive 拡張機能を提供します。この記事では、ZipArchiveを使って音声ファイルを圧縮・解凍する方法と、そのまま使えるサンプルコードを添付して紹介します。
始める前に、PHP に ZipArchive 拡張機能がインストールされ有効になっていることを確認する必要があります。インストールされていない場合は、次の手順に従ってください。
ステップ 1: PHP 構成ファイル php.ini を開く
ステップ 2: 次の行を検索します。
<span class="fun">;拡張子=zip.so</span>
ステップ 3: コメントを解除して次のように変更します。
<span class="fun">拡張子=zip.so</span>
ステップ 4: php.ini ファイルを保存して閉じます。
ステップ 5: Web サーバーを再起動して有効にします
次の例は、ZipArchive を使用してオーディオ ファイルを zip ファイルに圧縮する方法を示しています。
 <?php
// 新しいものを作成するZipArchive例
$zip = new ZipArchive();
// 作成する圧縮ファイルの名前を設定します
$zipName = 'audio_files.zip';
// 圧縮ファイルを開き、圧縮する必要がある音声ファイルを追加します
if ($zip->open($zipName, ZipArchive::CREATE) === true) {
    $audioFiles = ['file1.mp3', 'file2.wav', 'file3.ogg']; // 圧縮する必要がある音声ファイルのリスト
    foreach ($audioFiles as $file) {
        $path = 'audio/' . $file; // 音声ファイルが置かれているパス
        if (file_exists($path)) {
            // 圧縮ファイルにファイルを追加する,圧縮ファイル内の相対パス名を指定します
            $zip->addFile($path, $file);
        }
    }
    // 圧縮ファイルを閉じる
    $zip->close();
    echo '音声ファイルは正常に圧縮されました' . $zipName;
} else {
    echo '圧縮ファイルの作成に失敗しました';
}
?>コードでは、最初に ZipArchive インスタンスを作成し、次に新しい圧縮ファイルを開き、オーディオ ファイルを圧縮パッケージに追加し、最後に圧縮ファイルを閉じて操作を完了します。
ZipArchive は解凍操作もサポートしています。以下は、オーディオ ファイルを解凍するためのサンプル コードです。
 <?php
$zipName = 'audio_files.zip'; // 圧縮ファイル名
// 作成するZipArchive例
$zip = new ZipArchive();
// 圧縮ファイルを開く
if ($zip->open($zipName) === true) {
    // 指定したディレクトリに解凍します
    $zip->extractTo('unzipped_audio/');
    
    // 圧縮ファイルを閉じる
    $zip->close();
    
    echo '音声ファイルは正常に抽出されましたunzipped_audioフォルダ内';
} else {
    echo '圧縮ファイルを開く失败';
}
?>このコードは、圧縮ファイルを指定されたディレクトリに解凍し、操作の完了後に圧縮パッケージを閉じます。
この記事では、PHP ZipArchive 拡張機能を使用してオーディオ ファイルを圧縮および解凍する方法を紹介します。 ZipArchive を使用すると、圧縮パッケージを簡単に作成および管理できるため、ストレージ容量が効果的に節約され、ファイル転送効率が向上します。これらのスキルを習得すると、さまざまなオーディオ ファイル管理のニーズに簡単に対応できるようになります。
 
								
								
							 
								
								
							 
								
								
							 
								
								
							 
								
								
							 
								
								
							 
								
								
							 
								
								
							 
								
								
							