学習ポイント:
1.PHPアップロード構成
2.$_FILES配列
3.PHPアップロード関数
ほとんどの人は Web が Web ページのみで構成されていると考えていますが、HTTP プロトコルは実際には、オフィス
ドキュメント、PDF、実行可能ファイル、AVI、圧縮ファイル、その他さまざまな種類のファイルなど、あらゆるファイルを転送できます。 FTP はこれまでファイルをサーバーにアップロードする標準的な方法でしたが、Web 経由でファイルをアップロードすることもますます一般的になりつつあります。
1. PHPアップロード設定
PHP のファイルアップロード機能を微調整するために使用できる構成ディレクティブがいくつかあります。これらのディレクティブは、PHP のファイル アップロードが有効かどうか、許可される最大アップロード ファイル サイズ、許可される最大スクリプト メモリ割り当て、およびその他のさまざまな重要なリソースを決定するために使用されます。1.file_uploads=on|off: サーバー上の PHP スクリプトがファイルのアップロードを受け入れることができるかどうかを決定します。
2.max_execution_time=integer: 致命的なエラーが登録されるまでに PHP スクリプトを実行できる最大時間 (秒単位)。
3.memory_limit=integer: スクリプトが割り当てることができる最大メモリを MB 単位で設定します。これにより、暴走したスクリプトがサーバーのメモリを独占するのを防ぎます。
4.upload_max_filesize=integer: アップロードされるファイルの最大サイズを MB 単位で設定します。このディレクティブは、post_max_size より小さくなければなりません。
5.upload_tmp_dir=string: アップロードされたファイルが、処理前に、
ファイルが最終的な宛先に移動されるまで、サーバー上の一時的な場所に保存されるように設定します。
6.post_max_size=integer: POST メソッドを通じて受け入れられる情報の最大サイズを、
単位として MB 単位で決定します。
2. $_FILES 配列
アップロードフォームのHTML
リーリーENCTYPE="multipart/form-data"、これは修正された書き込み方法です。そうしないとファイルのアップロードが失敗しますACTION="upload.php"、アップロードするプログラムファイルのパスを定義しますMETHOD="post"、送信方法をPOSTとして定義します。通常、フォーム送信データはPOSTに設定されます
、これはアップロードされるファイル サイズの上限を定義する隠しフィールドです。この値を超えるとアップロードは失敗します。ファイルアップロードドメインの前に定義する必要があります。また、ここで定義する値は、php.ini ファイルの Upload_max_filesize で設定した値を超えることはできません。そうでない場合は、意味がありません (注: MAX_FILE_SIZE の値は、単なる提案です。実際には、ブラウザの制限に依存しないでください。実際には、MAX_FILE_SIZE をフォームに追加することをお勧めします。ユーザーが大きなファイルのアップロードを待つのに時間を費やしてからファイルが大きすぎるというトラブルを回避できます)
はカスタマイズでき、この値はコード ファイルで使用されます。$_FILES スーパー グローバル変数。さまざまなアップロード関連情報が保存されます。これは、PHP スクリプト
を通じてサーバーにアップロードされるファイルにとって重要です。
1. $_FILES["userfile"]["tmp_name"] 変数に保存される値は、Web サーバー内でファイルが一時的に保存される場所です。
2. $_FILES["userfile"]["n name"] 変数に格納される値は、ユーザー システム内のファイル名です。
3. $_FILES["userfile"]["size"] 変数に格納される値は、ファイルのバイト サイズです。
4. $_FILES["userfile"]["type"] 変数に保存される値は、ファイルの MIME タイプです (例: text/plain
または image/gif)。
5. $_FILES["userfile"]["error"] 変数に保存される値は、ファイルのアップロードに関連するエラー コードになります。
これはPHP4.2.0で追加された新機能です。 error はそれぞれいくつかの配列定数を提供します: 0: エラーが発生していないことを意味し、1:
は、upload_max_filesize です。 2: アップロードされたファイルのサイズが、HTML フォームの MAX_FILE_SIZE 要素で指定された最大値を超えていることを示します。 3: ファイルが部分的にのみアップロードされていることを示します。 4: ファイルがアップロードされていないことを示します。
リーリー
3つ。 PHPアップロード機能
PHP のファイル システム ライブラリは、多数のファイル処理関数を提供します。さらに、PHP は、ファイル アップロード プロセスに特に使用される 2 つの関数、is_uploaded_file() と move_uploaded_file() も提供します。
1. ファイルをアップロードするかどうかを決定します: is_uploaded_file()
リーリー
2. アップロードされたファイルを移動する: move_uploaded_file()
リーリー