ホームページ  >  記事  >  バックエンド開発  >  PHP_PHPチュートリアルにおける$_FILESの使い方と注意点

PHP_PHPチュートリアルにおける$_FILESの使い方と注意点

WBOY
WBOYオリジナル
2016-07-13 17:14:13976ブラウズ

$_FILES: 古い配列と同様に、HTTP POST ファイルのアップロード経由でスクリプトに送信される変数 $HTTP_POST_FILES 配列 (まだ有効ですが、使用は非推奨です) 詳細については、POST メソッドのアップロードを参照してください

$_FILES 配列の内容は次のとおりです:

$_FILES['myFile']['name'] クライアント ファイルの元の名前

$_FILES['myFile']['type'] ファイルの MIME タイプ。ブラウザは、「image/gif」などのこの情報のサポートを提供する必要があります。

$_FILES['myFile']['size'] アップロードされたファイルのサイズ (バイト単位)

$_FILES['myFile']['tmp_name'] ファイルのアップロード後にサーバーに保存される一時ファイル名。通常は php.ini の Upload_tmp_dir で指定できますが、設定することはできません。 putenv() 関数を使用します。

$_FILES['myFile']['error'] ファイルのアップロードに関連するエラー コード ['error'] は PHP 4.2.0 バージョンで追加されました。以下はその説明です: (PHP3.0 では、これからは定数になります)

UPLOAD_ERR_OK 値: 0; エラーは発生せず、ファイルは正常にアップロードされました

UPLOAD_ERR_INI_SIZE 値: 1; アップロードされたファイルは、php.ini の Upload_max_filesize オプションで制限された値を超えています


UPLOAD_ERR_FORM_SIZE 値: 2; アップロードされたファイルのサイズが HTML フォームの MAX_FILE_SIZE オプションで指定された値を超えています

UPLOAD_ERR_PARTIAL 値: 3; ファイルの一部のみがアップロードされます

UPLOAD_ERR_NO_FILE 値: 4; ファイルがアップロードされていません、値: 5; アップロードされたファイルのサイズは 0 です。

注:

1. ファイルは、デフォルトでは一時ディレクトリに保存されます。その場合は、一時ディレクトリから削除するか、別の場所に移動する必要があります。つまり、アップロードが成功したかどうかに関係なく、スクリプトの実行後、一時ディレクトリ内のファイルは必ず削除されます。したがって、ファイルを削除する前に、PHP の copy() 関数を使用して別の場所にコピーする必要があります。この時点で、ファイルのアップロード プロセスは完了します。

2. PHP 4.1.0 より前では、この配列の名前は $HTTP_POST_FILES でしたが、これは $_FILES のような自動グローバル変数ではありませんでした。 PHP 3 は $HTTP_POST_FILES 配列をサポートしていません。

3. フォームを使用してファイルをアップロードする場合は、属性 content enctype="multipart/form-data" を必ず追加してください。追加しないと、$_FILES[filename] を使用してファイル情報を取得するときに例外が報告されます。


テスト


コードは次のとおりですコードをコピーtru​​e

<フォーム アクション="upload_file.php チュートリアル" メソッド="投稿"
enctype="multipart/form-data">









php代码

代码如下 复制幣

if ((($_files["ファイル"]["タイプ"] == "画像/gif")
|| ($_files["ファイル"]["タイプ"] == "画像/jpeg")
|| ($_files["ファイル"]["タイプ"] == "画像/pjpeg"))
&& ($_files["ファイル"]["サイズ"]   {
  if ($_files["ファイル"]["エラー"] > 0)
    {
    エコー "エラー: " 。 $_files["ファイル"]["エラー"] 。 "
";
    }
  それ以外
    {
    エコー "アップロード: " 。 $_files["ファイル"]["名前"] 。 "
";
    echo "タイプ: " 。 $_files["ファイル"]["タイプ"] 。 "
";
    エコー "サイズ: " 。 ($_files["ファイル"]["サイズ"] / 1024) 。 " kb
";
    echo "保存場所: " 。 $_files["ファイル"]["tmp_name"];
    }
  }
それ以外
  {
  エコー「無効なファイル」;
  }

?>

文件上传精简代码

 代码如下 复制代码





Excel数据获取演示




   


     
提交表单

     

       

           
           
       

     

   


パブリック関数 parse()
{
/**
* $_FILES 配列の説明
* 配列(n) {
*["フォームファイルボックス名"] = & gt; 配列(5) {
;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ​​​​​                                                                                                                                                                                                                                                                         * * }
​​​​*/
$return=array(0,'');
/**
* 提出するかどうかを決定します
* is_uploaded_file (ファイル名) は、指定されたファイルが POST メソッドを使用してアップロードされたかどうかを判断し、不正な送信を防止するために使用されます。通常は、アップロードされたファイルを指定されたパスに保存するために move_upload_file と一緒に使用されます。                      */
If(!isset($_FILES) || !is_uploaded_file($_FILES['excel']['tmp_name']))
{
$return=array(1,'提出は違法です');
}
//プロセス
if(0 == $return[0])
{
import('@.Util.ExcelParser');
$excel=new ExcelParser($_FILES['excel']['tmp_name']);
$return=$excel->main();
}
//出力処理
print_r($return);
?>




詳細については、http://www.bKjia.c0m/phper/21/4662008ae09ff36c1a029763e9dcacf2.htmをご確認ください。

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

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

技術記事 $_FILES: 古い配列 $HTTP_POST_FILES 配列に似た、HTTP POST ファイルのアップロード経由でスクリプトに送信される変数 (まだ有効ですが、非推奨になりました) 詳細については、POST メソッドのアップロードを参照してください...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。