くだらない話をする前に、最初に断っておきますが、この記事は php 単一ファイルアップロードをマスターすることに基づいているため、ここではファイルアップロードサーバーの構成とフォーム設定については詳しく説明しません。 。
言うことは多くありません。早速本題に入りましょう。リクエスト ページを作成するには 2 つの方法があります (例として 3 つのファイルをアップロードする場合、フォーム部分のみを示します)。
リーリー リーリー
2つを比較すると、違いは名前だけであることがわかりました。1つ目は名前を配列形式で設定するのに対し、2つ目は設定時に簡単に考えられる方法です。表面に表示されているものは少しだけ違うだけですが、実際に doAction.php ページに送信される $_FILES は大きく異なります。
以下に示すように、$_FILES の最初のタイプは 3 次元配列であり、2 番目のタイプは 2 次元配列です。
関数 getFiles(){ foreach($_FILES as $file){ $fileNum=count($file['name']); if ($fileNum==1) { $ファイル=$ファイル; }他{ for ($i=0; $i < $fileNum; $i++) { $files[$i]['name']=$file['name'][$i]; $files[$i]['type']=$file['type'][$i]; $files[$i]['tmp_name']=$file['tmp_name'][$i]; $files[$i]['error']=$file['error'][$i]; $files[$i]['サイズ']=$ファイル['サイズ'][$i]; } } } 返却 $ファイル; }
この関数を通じて、$_FILES は次の形式に変換されます:
現時点では、2 つのアップロード メソッドは同じスタートラインにあります。次のタスクは、各ファイルをアップロードするための UploadFile() 関数を作成することです。これがこの記事の焦点でもあります。
ファイルアップロード機能:リーリー これには 2 つの小さな関数も含まれます:
リーリー
気持ち:
私はずっと前に PHP ファイルのアップロードに出会ったのですが、当時はめちゃくちゃだと感じました。 $_FILES に含まれる情報を理解し、記述した知識を使用していくつかのヒントを処理すれば、システムはそれを論理的に検討し、適切なタイミングで関数をカプセル化して、ファイルのアップロードを実行できるようです。素早く。今回紹介するコードは必ずしもニーズを満たすものではないので、適宜修正して独自のコードにすることができます。例えばアップロードされたファイルが画像の場合、拡張子だけでは判断できず、画像の特徴も利用して検証する必要があります。
http://www.bkjia.com/PHPjc/1037990.html