可変アドレスとファイルを含む動的 zip ファイルを生成し、ダウンロード可能なリンクを取得します
P粉513318114
P粉513318114 2023-08-08 19:02:30
0
1
655
<p>次のコードを使用して、2 つのファイルを zip ファイルに入れ、1 つは thanks.txt、もう 1 つは file.dat としたいのですが、この zip ファイルにリンクしますが、コードが正しく実行されません。このコードの修正と最適化に役立ちます。 <br /><br /> thanks.txt ファイルに、顧客のユーザー電子メールとともに次のテキストを配置します: <br /><br />こんにちは、'.$email_address 様。 ' ご利用いただきありがとうございます!<br /><br />私のコード:</p><p><strong></strong></p> <pre class="brush:php;toolbar:false;">function create_zip_file() { // 現在のユーザーのメール アドレスを取得します。 $current_user = wp_get_current_user(); $email_address = $current_user->user_email; $md5_address = md5($email_address); $directory_path = 'myfiles/cloud/' . $md5_address . '/'; if (!file_exists($directory_path)) { mkdir($ディレクトリパス, 0777, true); } $Myfile = file_put_contents($directory_path . 'file.dat' , $email_address); if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') { $website_url = 'https://' . $_SERVER['HTTP_HOST'] .'/'; } それ以外 { $website_url = 'http://' . $_SERVER['HTTP_HOST'] .'/'; } $result = $website_url . $directory_path . 'file.dat'; $zip = 新しい ZipArchive; if ($zip->open($zip_file , ZipArchive::CREATE) === TRUE) { //zipファイルにファイルを追加します $zip->addFile($result); // 指定されたテキストを使用してファイル new.txt ファイルを zip に追加します $zip->addFromString(' thanks.txt', 'こんにちは、'.$email_address.' 様、ご利用いただきありがとうございます!'); // すべてのファイルが追加されたので、zip ファイルを閉じます $zip->close(); // zip圧縮後にファイルを削除 リンクを解除($result); } $zip_file = $website_url . $directory_path . 'file.zip'; if (file_exists($zip_file)) { $zip_file を返します。 } それ以外 { false を返します。 } }</pre> <p><strong>そして、次のコードで zip ファイルを呼び出します。</strong></p> <p><code><a href="<?php echo create_zip_file();"> zip ファイルをダウンロード </a></code></p> <p>次のコードで静的アドレス ($zip_file) を使用すると: </p> <p><code>if ($zip->open($zip_file , ZipArchive::CREATE) === TRUE)</code></p> <p>zipファイルは作成されますが、動的アドレスを使用するとzipファイルが作成されません。 </p>
P粉513318114
P粉513318114

全員に返信(1)
P粉463824410

$zip->addFile($result); サーバー上の有効なパスが必要ですが、ファイルの URL が渡されました。

$zip_file = $website_url . $directory_path . 'file.zip' にも同じことが当てはまります;

.dat ファイルの作成時に使用したものと同じパスを使用してください: $zip->addFile( $ directory_path . 'file.dat')

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!