ファイルアップロードの処理
PHP Manual

PUT メソッドのサポート

PHP は、クライアントがサーバにファイルを保存するための HTTP PUT メソッドのサポートを提供します。 PUT リクエストは POST リクエストによるファイルアップロードよりもシンプルであり、 次のような形になります。

PUT /path/filename.html HTTP/1.1

これは、通常、リモートクライアントが /path/filename.html が指す内容を Web ツリーに保存したいことを意味します。 Apache または PHP に おいて全ての人が Web ツリー上の任意のファイルを自動的に上書きできる ようにするというのは明らかに良い発想ではありません。よって、このような リクエストを処理する際には、まずそのリクエストを処理する特定の PHP スクリプトが必要なことを web サーバに通知する必要があります。 Apache においては、Script ディレクティブにより これを行うことができます。これは、Apache 設定ファイルのほぼ任意の 場所に置くことができます。一般的なのは、<Directory> ブロック または <VirtualHost> ブロックの中です。次のように指定します。

Script PUT /put.php

これにより、この行を指定したコンテキストにマッチする URI を有する すべての PUT リクエストが put.php スクリプトに送られるよう Apache に 指定します。 もちろん、拡張子 .php により PHP が実行されるよう設定され、 PHP がアクティブであることが必要です。 このスクリプトに対するすべての PUT リクエストの対象リソースは、 スクリプト自身とします。アップロードされるファイルのファイル名ではありません。

PHP では、put.php の中で以下のようなことを行います。 これは、アップロードされたファイルをサーバ上のファイル myputfile.ext にコピーします。 ファイルコピーを行う前には、 何らかの確認やユーザ認証を行いたくなるかもしれません。

例1 HTTP PUT されたファイルの保存

<?php
/* PUT されたデータは標準入力からやってきます */
$putdata fopen("php://input""r");

/* 書き込みモードでファイルをオープンします */
$fp fopen("myputfile.ext""w");

/* データを 1 KB 単位で読み込み、
   ファイルに書き込みます */
while ($data fread($putdata1024))
  
fwrite($fp$data);

/* ストリームを閉じます */
fclose($fp);
fclose($putdata);
?>


ファイルアップロードの処理
PHP Manual
[お役立ちリンク集] NPO法人の設立(東京・大阪) 人材派遣・アルバイト 不動産・賃貸・マンション ハイブリッド派遣 堺市の入院・内科 京都市のインプラント 会社設立 産業廃棄物収集運搬業許可 風俗営業許可(バー・キャバクラ等) ディレクトリ1 | ディレクトリ2 | ディレクトリ3 | ディレクトリ4 | ディレクトリ5 | ディレクトリ6 | ディレクトリ7 | ディレクトリ8 | ディレクトリ9 | ディレクトリ10 | ディレクトリ11 | ディレクトリ12 | ディレクトリ13 | ディレクトリ14 | ディレクトリ15 | ディレクトリ16 | ディレクトリ17 | ディレクトリ18 | ディレクトリ19 | ディレクトリ20 | ディレクトリ21 | ディレクトリ22 | ディレクトリ23 | ディレクトリ24 | ディレクトリ25 | ディレクトリ26 | ディレクトリ27 | ディレクトリ28 | ディレクトリ29 | ディレクトリ30 | ディレクトリ31 | ディレクトリ32 | ディレクトリ33 | ディレクトリ34 | ディレクトリ35 | 人材派遣・アルバイト | 人材派遣・アルバイト | ディレクトリ36 |