首頁 > 後端開發 > php教程 > PHP檔案上傳的實作及其介紹 php檔案是什麼檔案 php上傳檔案程式碼 php 檔案上傳大小設

PHP檔案上傳的實作及其介紹 php檔案是什麼檔案 php上傳檔案程式碼 php 檔案上傳大小設

WBOY
發布: 2016-07-29 08:54:18
原創
1068 人瀏覽過

關於實現及介紹在程序註釋中。

提交文件的頁面:(可以分別提交到doAction.php、doAction1.php、doAction2.php進行測試)

upload.php

reee
upload.php doAction1.php

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>文件上传</title>
</head>
<body>
    <form action="doAction3.php" method="post" enctype="multipart/form-data">
        <!-- 在客户端可以设置表单MAX_FILE_SIZE限制的大小 -->
        <!--<input type="hidden" name="MAX_FILE_SIZE" value="5*1024*1024">-->
        请选择您要上传的文件:
        <!-- 在客户端设置允许上传的文件类型 --><!-- 但是我们需要记住:客户端所做的任何限制都是不安全的 -->
        <!--<input type="file" name="myFile" accept="image/jpeg,image/gif,image/png"/><br/>-->
        <input type="file" name="myFile"/><br/>
        <input type="submit" value="上传文件"/>
    </form>
</body>
</html>
登入後複製

doAction2.php


<?php
/**
 * Created by PhpStorm.
 * User: DreamBoy
 * Date: 2016/4/8
 * Time: 15:17
 */
//$_FILES:文件上传变量
/*
 * $_FILES中保存着上传文件的信息
 * name:上传文件的名称
 * type:上传文件的MIME类型
 * tmp_name:上传到服务器上的临时文件名
 * size:上传文件的大小
 * error:上传文件的错误号
 */
print_r($_FILES);
$filename = $_FILES['myFile']['name'];
$type = $_FILES['myFile']['type'];
$tmp_name = $_FILES['myFile']['tmp_name'];
$size = $_FILES['myFile']['size'];
$error = $_FILES['myFile']['error'];

//上传方式
//第一种方式:
//将服务器上的临时文件移动到指定目录下,移动成功返回true,否则返回false。
//move_uploaded_file($tmp_name, $destination);
//move_uploaded_file($tmp_name, 'uploads/' . $filename);

//第二种方式:
//copy($src,$dst) :将文件拷贝到指定目录,拷贝成功返回true,否则返回false
//copy($tmp_name, 'uploads/' . $filename);

/*
 * 文件上传配置
 * 服务器端配置:
 * file_uploads = On, 支持HTTP上传
 * upload_tmp_dir=,临时文件保存的目录
 * upload_max_filesize=2M,允许上传文件的最大值
 * max_file_uploads=20,允许一次上传的最大文件数
 * post_max_size=8M,POST方式发送数据的最大值
 *
 * max_execution_time = -1,设置了脚本被解析器终止之前允许的最大执行时间,单位为秒,
 * 放置程序写得不好而占尽服务器资源。-1代表没有限制。
 * max_input_time = 60,脚本解析输入数据允许的最大时间,单位是秒。
 * max_input_nesting_level = 64,设置输入变量的嵌套深度。
 * max_input_vars = 1000,接受多少输入的变量(限制分别应用于$_GET、$_POST和$_COOKIE
 * 超全局变量)指令的使用减轻了以哈希碰撞来进行拒绝服务攻击的可能性。
 * 如果超过指令数量的变量,将会导致E_WARNING的产生,更多的输入变量将会从请求中截断。
 * memory_limit = 128M,最大单线程的独立内存使用量。也就是一个web请求,给予线程最大的内存使用量的定义。
 */

/*
 * 错误信息说明
 * UPLOAD_ERR_OK:其值为0,没有错误发生,文件上传成功
 * UPLOAD_ERR_INT_SIZE:其值为1,上传的文件超过了php.ini中uploaded_max_filesize选项限制的值。
 * UPLOAD_ERR_FORM_SIZE:其值为2,上传文件的大小超过了HTML表单中MAX_FILE_SIZE选项指定的值。
 * UPLOAD_ERR_PARTIAL:其值为3,文件只有部分被上传。
 * UPLOAD_ERR_NO_FILE:其值为4,没有文件被上传。
 * UPLOAD_ERR_NO_TMP_DIR:其值为6,找不到临时文件夹。
 * UPLOAD_ERR_CANT_WRITE:其值为7,文件写入失败。
 * UPLOAD_ERR_EXTENSION:其值为8,上传的文件被PHP扩展程序中断。
 */
登入後複製
以上就介紹了PHP檔案上傳的實作及其介紹,包括了php檔案,檔案上傳方面的內容,希望對PHP教學有興趣的朋友有幫助。


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板