ホームページ >バックエンド開発 >PHPチュートリアル >PHP 複数ファイルのアップロード_PHP チュートリアル

PHP 複数ファイルのアップロード_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:59:13886ブラウズ

PHPマルチファイルアップロードの個人的な理解まとめ

PHPの基本的なアプリケーションである複数ファイルのアップロードについて、私のレベルでは限界があるので、詳しくご紹介したいと思います。みんなで一緒に進歩していきましょう。
HTML ファイルの input タグの FILE 型の名前の後ろに [] を追加することで、HTML 内に配列を作成します。たとえば、名前は photos、複数のファイル参照の名前は photos です。 [] の例は次のとおりです。 コンテンツをクリップボードにコピーします
コード:
<br> <font face="新宋体"><form action="upload.php" method="post" enctype="multipart/form-data"><br> <p><br> <input type="file" name="pictures[]" /><br /><br> <input type="file" name="pictures[]" /><br /><br> <input type="file" name="pictures[]" /><br /><br> <input type="submit" value="アップロード" /><br> </p><br> </form> //マニュアルの例。 </font> HTML ファイルを使用して配列を作成する方法のマニュアルでは、これについて説明しています:

&lt; form&gt; &lt; input name = "myarray []" /&gt;
&lt; input name = "myarray []" /&gt;
&lt; input name = "myarray []" /&gt;
&lt; input name = "myarray []" /&gt;
変数名の後の角括弧に注目してください。これにより配列になります。


同じ名前を割り当てることで、ユニットを異なる配列にグループ化できます:
&lt; input name = "myarray []" /&gt;
&lt; input name = "myarray []" /&gt;
&lt; input name = "myotherarray []" /&gt;
&lt; input name = "myotherarray []" /&gt;
これにより、MyArray と MyOtherArray という 2 つの配列が生成され、PHP スクリプトに送信されます。


特定のキー名を配列に割り当てることもできます:
&lt; input name = "anotherArray []" /&gt;
&lt; input name = "anotherArray []" /&gt;
& Lt; 入力名 = "Anotherray [メール]" /& gt; &lt; input name = "AnotherArray [電話]" /&gt;
AnotherArray 配列には、キー 0、1、電子メール、電話が含まれます。

注: HTML では配列キーの指定はオプションです。キー名を指定しない場合、フォーム内にセルが表示される順序で配列が埋められます。最初の例にはキー 0、1、2、3 が含まれます。


上記の HTML をクリックしてアップロードすると、$_FILES スーパー グローバル変数によって読み取られ、HTTP POST メソッドによって渡されたファイル情報が配列に結合されます。 3 つ以上のファイルの配列形式は 3 次元です。


$_FILES の使用方法:
$_FILES['ユーザーファイル']['名前']
クライアント マシン ファイルの元の名前。
$_FILES['userfile']['type'] ファイルの MIME タイプ (ブラウザーがこの情報を提供する場合)。例は「
image/gif
」です。ただし、この MIME タイプは PHP 側ではチェックされないため、鵜呑みにしないでください。 $_FILES['userfile']['size'] アップロードされたファイルのサイズ (バイト単位)。 $_FILES['userfile']['tmp_name'] ファイルのアップロード後にサーバーに保存される一時ファイル名。
$_FILES['ユーザーファイル']['エラー']


以下はファイルのアップロードです。ファイルがアップロードされると、その情報は $_FILES 配列に生成されます。ファイルなので、わかりやすくするために、$ を出力するために PRINT_R を使用します。 _FILES を使用してその構造を表示します。

HTMLファイル:
コード:






PHP は次のファイルを受け取ります。
コード:
<font face="新宋体"><br> <?php<br> print_r($_FILES);<br> ?></font> コマンドを UPLOAD.PHP として保存し、上記の HTML を実行してアップロードするファイルを選択します (たとえば、ファイル名は Thumbs.db )。IE ブラウザで [表示] および [ソース コード] をクリックします。次のように表示されます:
配列
(
[写真] =>配列
(
親指。 アプリケーション/オクテット D:easyphp \ tmpphp64.tmp                                                                             ​ [サイズ] => 23040 )
)この情報に基づいて、上記の $_FILES の使用法と組み合わせると、誰もがより深く理解できるはずです。


複数のファイルのアップロードを見てみましょう。3 つのファイル名は FILE1.TXT、FILE2.TXT、および FILE3.TXT です。次に、PRINT_R 出力を使用してその構造を表示します。
HTML ファイルのコード:
コード:






<input type="file" name="pictures[]" /><br /><br> <input type="submit" value="アップロード" /><font face="新宋体"> </p><br> </form><br><br> PHP受信ファイルコード: <br>コード:<br> <br><br></font> <?php print_r($_FILES);
?>
ソースファイルを表示: <font face="新宋体"> <br /> 配列<br /> (<br /> [写真] =>配列</font> ( [name] => (
[0] = > [1] = > [2] = > ファイル3.txt; )
[タイプ] => (
[0] => application/octet-stream
に に )
[tmp_name] => 配列
(
[0] =>D:EasyPHP\tmpphp47.tmp
に に )
[エラー] =>配列 (
に に に )
[サイズ] => (
に に に )
)
)
/file1.txt および /file2.txt という名前のファイルが送信されると仮定すると、$_FILES['pictures']['name'][0] の値は file1.txt になり、$_FILES['pictures'][ 'name'][1] の値は file2.txt になります。同様に、$_FILES['file2.txt']['size'][0] には、ファイル file1.txt のサイズが含まれます。



http://www.bkjia.com/PHPjc/631910.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/631910.html
技術記事

PHP のマルチファイルアップロードについての個人的な理解まとめ PHP の基本的なアプリケーションであるマルチファイルアップロードについて、ここで詳しく紹介します。私のレベルは限られているので、もっと意見をください。みんなも一緒に…
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。