首頁 > 後端開發 > php教程 > PHP 文件下传上载

PHP 文件下传上载

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-13 13:03:51
原創
1061 人瀏覽過

PHP 文件上传下载

1. php.ini ?配置 ? ?

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

;;;;;;;;;;;;;;;;;;;

; Resource Limits ;    <span style="white-space: normal;">资源限制</span>

;;;;;;;;;;;;;;;;;;;

 

; Maximum execution time of each script, in seconds

; http://php.net/max-execution-time

; Note: This directive is hardcoded to 0 for the CLI SAPI

max_execution_time = 30    

 

; Maximum amount of time each script may spend parsing request data. It's a good

; idea to limit this time on productions servers in order to eliminate unexpectedly

; long running scripts.

; Note: This directive is hardcoded to -1 for the CLI SAPI

; Default Value: -1 (Unlimited)

; Development Value: 60 (60 seconds)

; Production Value: 60 (60 seconds)

; http://php.net/max-input-time

max_input_time = 60

 

; Maximum input variable nesting level

; http://php.net/max-input-nesting-level

;max_input_nesting_level = 64

 

; Maximum amount of memory a script may consume (128MB)

; http://php.net/memory-limit

memory_limit = 128M

登入後複製

???max_execution_time 每个脚本页面完成执行操作的最大时间,单位是秒。如果为-1,则没有限制

?? max_input_time 每个脚本页面处理请求数据的最大时间,单位是秒。如果为-1,则没有限制

?? memory_limit 一个脚本页面所能消耗的最大内存

?

1

2

3

; Maximum size of POST data that PHP will accept.

; http://php.net/post-max-size

post_max_size = 8M

登入後複製

?? ?PHP通过表单POST所能接收的最大值,包括表单里的所有项。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

;;;;;;;;;;;;;;;;

; File Uploads ;

;;;;;;;;;;;;;;;;

 

; Whether to allow HTTP file uploads.

; http://php.net/file-uploads

file_uploads = On

 

; Temporary directory for HTTP uploaded files (will use system default if not

; specified).

; http://php.net/upload-tmp-dir

upload_tmp_dir = "e:/wamp/tmp"

 

; Maximum allowed size for uploaded files.

; http://php.net/upload-max-filesize

upload_max_filesize = 2M

登入後複製

?? ?file_uploads 是否允许HTTP上传,默认为on,即为开启,无需修改

?? ?upload_tmp_dir 文件上传时的临时存储目录。如果没有指定,会用系统默认的临时文件夹

?? ?upload_max_filesize 允许上传的文件的最大值

?

2. 页面设置 ? ?3个条件缺一不可

(1)type属性设置为file

(2)form的enctype="multipart/form-data"

(3)method="post"

?

?

1

2

3

4

<form action="" method="post" enctype="multipart/form-data">

        <input name="filename" type="file"/>

        <input type="submit" value="enter"/>

</form>

登入後複製

?

???

?? 建议在上传表单中增加一个hidden隐藏域,允许上传的最大字节数。当文件上传大于1MB时,$FILES中的error值将返回2

?

3. bool move_uploaded_file(string filename,string destination) ?函数是PHP中专门用来上传文件的。

?? ?filename 客户端源文件的文件名及其路径,上传文件的临时文件名,即$_FILES[tmp_name]

?? ?destination 上传后保存在服务器的新的路径和名称

?? ?move_uploaded_file() 作用只是将文件换个地方保存,这是出于安全的考虑

?? ?bool is_uploaded_file(string filename) ?判断文件是否为POST上传

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<?php

    header('Content-Type:text/html;charset=utf-8');

    $tmparr=$_FILES['filename'];

    if($tmparr['error']==0){

        if (is_uploaded_file($tmparr['tmp_name'])) {

            if (move_uploaded_file($tmparr['tmp_name'], $tmparr['name'])) {

                echo "上传成功";

            }else {

                echo "<script>alert('文件不合法');history.go(-1);</script>";

            }

        }else {

            echo "<script>alert('非法操作');history.go(-1);</script>";

        }

    }else {

        echo "<script>alert('上传错误,错误类型: ".$tmparr['error']."');history.go(-1);</script>";

    }

?>

登入後複製

?? $_FILES[]['name']: ? ? ? ? ? 客户端源文件名

?? $_FILES[]['type']: ? ? ? ? ? ? 上传文件的类型

?? $_FILES[]['size']: ? ? ? ? ? ? ?上传文件的字节数

?? $_FILES[]['tmp_name']: ? ?上传后在服务器上的临时存储文件名

?? $_FILES[]['error']: ? ? ? ? ? ? 上传文件的错误代码

?

4. ?实现下载 ?实现下载最常用的方法通过链接下载和通过header()函数下载。

?

echo "".$filen."
";

?

"" '' .三者如何配合使用?

?

?

?

?

?

?

相關標籤:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
No input file specified.這個咋解決
來自於 1970-01-01 08:00:00
0
0
0
No input file specified.開啟頁面就這樣
來自於 1970-01-01 08:00:00
0
0
0
thinkphp中Controller裡面使用Request::File('image');
來自於 1970-01-01 08:00:00
0
0
0
javascript - <include file="Public:header"/>無效
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板