この記事では、php でのファイルのアップロードとダウンロードについて説明します。必要な友達に共有します。
ファイルのアップロードとダウンロード
アップロード
クライアントからサーバーへ
クライアント設定(フォーム設定)
1. フォーム送信メソッドは post である必要があります
2. enctype="multipart/form-data"
enctype: データをサーバーに送信する前にフォーム データをエンコードする方法を指定します。
multipart/form-data: 文字をエンコードしません。データはデータストリーム(バイナリ)の形式で送信されることがわかります。
application/x-www-form-urlencode: デフォルトのオプション、送信前にすべての文字をエンコードします
3.
1. 使用できるかどうかは、PHP によってはサポートされない場合があります。
2. ブラウザがファイルを送信する前にユーザーが事前に判断できるようにします。ファイルサイズが設定されたバイト数より大きい場合、実際のポスト作業は実行できず、コンテンツはサーバーに送信されません。
3. の上に配置
サーバー側の設定
1. file_uploads = アップロードを許可するかどうか
2. Upload_max_filesize = 2M PHP で許可されるファイル サイズ
3. post_max_size = 8M は、post メソッドを通じて受信できるデータのサイズを制限します。
post_max_size は、upload_max_filesize より大きくなければなりません
4. Upload_tmp_dir = "C:xampptmp" ファイルをアップロードした後の一時ディレクトリ。
php スクリプトはアップロードされたデータを受信します
1. $_FILES を使用してアップロードされたデータを受信します。
2. $_FILES の各要素の意味
name=>アップロードされたファイル名
type=>アプリケーションを使用して特定の拡張子を持つファイルを設定するために使用される mime タイプ ファイルを開くとき、拡張機能名を使用してアクセスすると、ブラウザは開くアプリケーションを自動的に指定します。
tmp_name=>アップロード時の一時ファイル名。ファイルのアップロードが完了すると、生成された一時ファイルはデフォルトで一時ファイルディレクトリに保存されます。この一時ファイルの内容をコピーする限り、アップロードは実際に成功します。このファイルは、コピーが成功したかどうかに関係なく削除されます。 - ‐ ‐ upload_max_filesize オプションによって制限される値。 ️アップロードできません 値 2 でアップロードでき、アップロードされたファイルのサイズが HTML フォームの MAX_FILE_SIZE オプションで指定された値を超えています。文 値は 3 で、ファイルはアップロードのみされます。値は 4 で、ファイルはアップロードされません。その値は 6 であり、一時フォルダーが見つかりません。 PHP 4.3.10 および PHP 5.0.3 で導入されました。文 ファイルの値は 7 で、ファイルの書き込みは失敗します
size = & gt; ファイルのサイズはバイトに基づいています。
3. アップロードされた一時ファイルを指定されたディレクトリに移動します
move_uploaded_file();
注: 中国語の名前をアップロードする場合は、デフォルトで文字セットの問題に注意してください。 value utf-8ですが、XPシステムのデフォルトの文字セットはGBK文字セットなので変換する必要があります
複数のファイルをアップロードするときは注意してください
他の言語とは異なり、switch の continue ステートメントには Break と同様の効果があることに注意してください。ループ内にスイッチがあり、外側のループの次の反復に継続したい場合は、 continue 2 を使用します。
ダウンロード
サーバーからクライアント
http を使用したダウンロード: ブラウザーがファイルを認識できる場合は直接解析し、認識できない場合はダウンロード
サーバー設定を提供します
これがダウンロードされたファイルであり、解析しないことをブラウザに直接伝えます
1. header('content-type: text/html;charset=utf-8');//文字セットを設定します
2. header('content -disposition:attachment');//ダウンロード ファイル (添付ファイル) であることを伝えます
3. header('content-disposition:attachment;filename=xxxxx');//ダウンロード ファイル (添付ファイル) であることを伝えます。添付ファイルを添付してファイル名を付けます (ポイント 2 に基づいて追加)
4. ファイルの内容をすべて読み取ります。そうでないと内容がありません
5. ファイルの大きさをブラウザーに伝えます header('content- length: ファイルのサイズ');
注: ヘッダーの前に出力があってはなりません
関連する推奨事項: ファイルのアップロードとダウンロードを実装するには
以上がPHPでのファイルのアップロードとダウンロードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。