ホームページ > バックエンド開発 > PHPチュートリアル > PHPはファイルのアップロードとダウンロードを実装します

PHPはファイルのアップロードとダウンロードを実装します

WBOY
リリース: 2016-07-29 08:49:43
オリジナル
1302 人が閲覧しました

ファイルアップロードの原則:
クライアントのファイルをサーバーにアップロードし、サーバーの一時ファイルを指定されたディレクトリに移動します。
クライアント構成:
1. フォームページ
2. フォームは郵送でお送りします
3. enctype=”multipart/form-data”を追加

$_FILESにはアップロードされたファイルの情報が保持されます
name: アップロードされたファイルの名前
type: アップロードされたファイルの MIME タイプ
tmp_name: サーバーにアップロードされた一時ファイル名
サイズ: アップロードファイルのサイズ
エラー: アップロードされたファイルのエラー番号

move_uploaded_file(tmpn a me 宛先): サーバー上の一時ファイルを指定したディレクトリに移動し、名前を付けます。
例:
move_uploaded_file(tmpnam p」 loads/".ファイル名);
また:
copy(src,dst);

ファイルアップロード設定: php.ini
サーバー側の構成:
file_uploads = オン、HTTP アップロードをサポートします
Upload_tmp_dir=、一時ファイルが保存されるディレクトリ
Upload_max_filesize = 2M、アップロードできるファイルの最大サイズ
max_file_uploads = 20、一度にアップロードできるファイルの最大数
post_max_size = 8M、POST メソッドによって送信されるデータの最大値

max_execution_time = -1、不適切に作成されたプログラムがサーバー リソースを占有することを防ぐために、パーサーによってスクリプトが終了されるまでに許可される最大実行時間を秒単位で設定します
max_input_time = 60、スクリプトが入力データを解析するために許容される最大時間 (秒単位)
max_input_nesting_level = 64、入力変数のネストの深さを設定します
max_input_vars = 1000、受け入れられる入力変数の数 (制限は GETに適用されます)それぞれ) _POST,$_COOKIEスーパーグローバル変数) ディレクティブを使用すると、ハッシュ衝突によるサービス拒否攻撃の可能性が軽減されます。命令で指定された数より多くの変数がある場合、E_WARING が生成され、それ以上の入力変数がリクエストから切り捨てられます。 Memory_limit = 128M、単一スレッドの最大独立メモリ使用量。つまり、Web リクエストはスレッドの最大メモリ使用量の定義を提供します。

PHPはファイルのアップロードとダウンロードを実装します
PHPはファイルのアップロードとダウンロードを実装します
注: クライアント側でコードが制限されている場合は、ブラウザでコードを変更することで制限を無効にすることができます。したがって、制限はすべてサーバー側で行う必要があります。 PHPはファイルのアップロードとダウンロードを実装します
サーバー側の制限:

アップロードファイルサイズを制限する(サイズによる)

アップロードされるファイルの種類を制限します (in_array(suffix, array)、ファイルのサフィックスが指定された種類の配列内にあるかどうかを判断します)
実際の画像タイプかどうかを確認します (getimagesize)
HTTP POST メソッドによってアップロードされたかどうかを検出します (is_uploaded_file、true を返す場合は、PHP post メソッドを通じてアップロードされたことを意味します)

一意の文字列を生成します:

md5(uniqid(microtime(true),true))


').addClass('事前番号付け').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i

').text(i)); }; $numbering.fadeIn(1700); }); }); 上記では、ファイルのアップロードと PHP コンテンツを含む、PHP でのファイルのアップロードとダウンロードの実装を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート