[解決済み] URLからサーバーにファイルをダウンロードする
2022-03-15 12:31:18
質問
さて、これは非常に簡単そうに見えますが、そうなんです。サーバーにファイルをダウンロードするために必要なことは、以下の通りです。
file_put_contents("Tmpfile.zip", file_get_contents("http://someurl/file.zip"));
ただ、一つ問題があります。100MBのような大きなファイルを持っている場合はどうすればいいのか。そうすると、メモリが足りなくなり、ファイルをダウンロードできなくなります。
私が欲しいのは、ダウンロード中にファイルをディスクに書き込む方法です。そうすれば、メモリの問題に直面することなく、より大きなファイルをダウンロードすることができます。
どのように解決するのですか?
PHP 5.1.0から。
file_put_contents()
としてストリームハンドルを渡すことで、ピース単位の書き込みをサポートしています。
$data
パラメータで指定します。
file_put_contents("Tmpfile.zip", fopen("http://someurl/file.zip", 'r'));
マニュアルより
もし データ [がストリームリソースである場合、そのストリームの残りのバッファを指定されたファイルにコピーします。これは
stream_copy_to_stream()
.
(感謝 ハクレ .)
関連
-
[解決済み] 警告:mysqli_fetch_array()は、パラメータ1がmysqli_resultであることを期待する、オブジェクトはで指定された。
-
[解決済み] ブラウザによって異なるURLの最大長とは?
-
[解決済み] URI、URL、URNの違いは何ですか?
-
[解決済み] PHPで配列から要素を削除する
-
[解決済み] YouTube APIからYouTubeビデオのサムネイルを取得する方法を教えてください。
-
[解決済み] Androidでファイルをダウンロードし、ProgressDialogで進捗を表示する。
-
[解決済み] HTTPでファイルをダウンロードするには?
-
[解決済み] GitHubから単一ファイルをダウンロードする
-
[解決済み] Pythonで大きなファイルをリクエストでダウンロードする
-
[解決済み】ASP.NET MVCでファイルを表示/ダウンロードに戻す場合
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Weird PHP error: 'Can't use function return value in write context'.
-
[解決済み] 整形されていない数値が発生しました。
-
[解決済み】PHPで空の値からデフォルトオブジェクトを作成する?
-
[解決済み】SQLSTATE[42000]: 構文エラーまたはアクセス違反が発生しました。1064 SQL 構文にエラーがあります - PHP - PDO [重複]。
-
[解決済み】変な電話番号を生成するフェイカー?
-
[解決済み] SQLSTATE[HY093]: 無効なパラメータ番号: バインドされた変数の数が102行目のトークンの数と一致しない [終了]
-
[解決済み】未定義の関数mysql_query()をLoginで呼び出す【重複
-
[解決済み] Uncaught SyntaxError: JSON の位置 1 に予期しないトークン o があります。
-
[解決済み】In_arrayが動作しない。
-
[解決済み] PHP product.php?id=1 のような URL を作成する方法