欢迎光临散文网 会员登陆 & 注册

php快速入门4 — 文件上传与session

2023-09-14 16:34 作者:doubleyong  | 我要投稿

1. 文件上传

客户端发起请求

 有文件上传 method必须为post , 且 enctype 的编码格式必须为:multipart/form-data


服务器接收数据与文件,进行保存

完整后台代码

代码解析,获取文件对象

<?php

   if($_POST){

      print_r($_FILES["txtFile"]);  //键名与name值相同

   }

文件大小的限制

$_FILES["txtFile"]["size"]: 返回文件的大小,单位:字节

    size : 文件大小

    name: 文件名

    type: 文件类型

    tmp_name: 临时文件路径

    error: 错误信息

文件后缀名的检查 : 通过name文件名,获取后缀名

   $fileName = $_FILES["txtFile"]["name"];

   $arr = explode(".", $fileName);

   return $arr[count($arr)-1];

判断保存文件的路径,不存在则创建

$uploadPath = "./uploads/";

if (!file_exists($uploadPath)) {

       // 不存在就创建目录

       mkdir($uploadPath, 777, true);  // 777:最高权限 (读,写,执行)

 }

上传文件

// 正常命名规则: 用户ID+时间戳

   // 可以用UUID,但是会消耗性能   uuid: 通过唯一识别码


$fileName = time().'.'.$ext;   //新的文件名

move_uploaded_file($tempFile, $uploadPath.$fileName); //1. 临时文件的路径   2. 保存的文件路径



2. 会话

http 协议是无状态,使用session 和 cookie 两种技术来记录会话状态


 cookie :

     将状态存在cookie ,之后的请求,浏览器会自动将cookie一起传到服务器,让服务器可以识别状态

     cookie 是存在客户端的;


     cookie 的优点:

         数据存在客户端上,减轻服务器的压力


     缺点:

         数据存在客户端上,安全性比较低


   取cookie

<?php     echo $_COOKIE['name'];?>


    删除cookie(就是把这个cookie的有效期设置为当前时间以前)

    <?php    setcookie(“name", "", time() - 3600);?>


 session :

      作用:记录会话状态

      在服务器上记录会话状态,然后将对应的session_id,响应给客户端,并且存在cookie;之后每一次请求都会带上cookie ; 服务器会根据cookie中的session_id找到保存的客户状态


      1. 创建session ,保存会话状态

       session_start(); 

         $_SESSION["user"] = "doubleyong";

         $_SESSION["head"] = "xxx.png";


     2. 获取session 

         session_start(); 

         if( isset($_SESSION["user"] ) ){

             echo $_SESSION["user"];

         }


   3. 删除session 

     session_start();

      if( isset($_SESSION["user"] ) ){

             unset(isset($_SESSION["user"])

         }


     //isset() 如果指定变量存在且不为NULL,则返回TRUE,否则返回FALSE。  

     //unset() 函数用于销毁给定的变量  


   4. 销毁所有session 

      session_start();

      session_destory(); //销毁所有session 


更多文章,请看公主号: bug收集   个人网站:bugshouji.com 

php快速入门4 — 文件上传与session的评论 (共 条)

分享到微博请遵守国家法律