PHP には、RFC-1867 準拠のブラウザ (Netscape Navigator 3.0 以降、Microsoft Internet Explorer 3.0 (パッチ適用) 以降を含む) からのファイルのアップロードを受け入れる機能があります。この機能を使用すると、ユーザーはテキスト ファイルとバイナリ ファイルをアップロードできます。 PHP の認証およびファイル処理機能を使用すると、誰がファイルをアップロードできるか、アップロードされたファイルに対して何ができるかを完全に制御できます。
以下のフォームと同様の方法でファイルアップロード画面を作成できます。
例 2-3. ファイル アップロード フォーム
ここで、「_URL_」は PHP HTML ファイルを指します。 MAX_FILE_SIZE 隠しフィールドはファイル入力フィールドの前に置く必要があり、その値は許容可能な最大ファイル サイズです。この値の単位はバイトです。このターゲット ファイルでは、ファイルが正常にアップロードされたかどうかを定義するために次の変数が使用されます:
$userfile: アップロードされたファイルが保存されるサーバー上の一時ファイルの名前。
$userfile_name: 送信者のシステムの初期ファイル名。
$userfile_size: アップロードされたファイルのサイズ (バイト単位)。
$userfile_type: 多目的インターネット メール拡張機能タイプ ファイル (ブラウザーがこの情報を提供する場合)。例は「画像/gif」です。
注: ここの「userfile」部分は変更できます。アップロード フォームでタイプが「TYPE=file」である限り、任意の名前を付けることができます。上の例では、その名前を「userfile」として選択しました。