一、PHP Session
1)session是什么?
session是服务器会话状态,可用于记录访问用户后台会话数据。
Session 的工作机制是:为每个访客创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,或者通过 URL 进行传导。
2)session的启动
session的启动方式有两种:
1,使用脚本开启会话,要保证在使用会话的所有脚本中执行。
<?php
session_start();
2,通过修改php.ini配置项 session.auto_start,自动开启会话(不建议使用)
3)session的设置以及使用
1,使用$_SESSION来设置和使用
<?php
session_start();
$_SESSION['web']='csdn.com';
print_r($_SESSION);
4)session的两种消耗方式
1,删除一个变量:unset($ _SESSION[‘name’]);
删除全部变量:$_SESSION = [];
<?php
session_start();
$_SESSION['web']='csdn.com';
unset($_SESSION['web']);
print_r($_SESSION);
2,使用session_destroy()函数删除整个文件
5)session的常用函数
1,session_save_path
设置服务器会话数据储存目录,必须在session_start前使用。
2,session_id
通过 session_id 函数来获取/设置当前会话 ID。
3,session_name
获取或设置会话COOKIE名称,如果设置会话名称则需要在session_id前调用。
6)session的自动垃圾回收功能
主要逻辑为两个:1,session文件过期时间:意思是当用户多久不使用后文件可以清理 2,启动垃圾回收程序的概率。
通过修改php.ini里面的session.gc_probability,session.gc_divisor,session.gc_maxlifetime这三个参数来使用
其中session.gc_maxlifetime是文件过期时间,以秒为单位
session.gc_probability,session.gc_divisor这两个可以把前者看成分子,后者看成分母。
二、PHP E-mail
因为没有配置php的 e-mail环境,就直接看菜鸟教程简单了解一下了。以下基本都是菜鸟教程里面的
1,php的mail()函数
语法:mail(to,subject,message,headers,parameters)
使用例子:
<?php
$to = "someone@example.com"; // 邮件接收者
$subject = "参数邮件"; // 邮件标题
$message = "Hello! 这是邮件的内容。"; // 邮件正文
$from = "someonelse@example.com"; // 邮件发送者
$headers = "From:" . $from; // 头部信息设置
mail($to,$subject,$message,$headers);
echo "邮件已发送";
?>
2,PHP Mail 表单
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>
<?php
if (isset($_REQUEST['email'])) { // 如果接收到邮箱参数则发送邮件
// 发送邮件
$email = $_REQUEST['email'] ;
$subject = $_REQUEST['subject'] ;
$message = $_REQUEST['message'] ;
mail("someone@example.com", $subject,
$message, "From:" . $email);
echo "邮件发送成功";
} else { // 如果没有邮箱参数则显示表单
echo "<form method='post' action='mailform.php'>
Email: <input name='email' type='text'><br>
Subject: <input name='subject' type='text'><br>
Message:<br>
<textarea name='message' rows='15' cols='40'>
</textarea><br>
<input type='submit'>
</form>";
}
?>
</body>
</html>
实例解释:
- 首先,检查是否填写了邮件输入框
- 如果未填写(比如在页面被首次访问时),输出 HTML 表单
- 如果已填写(在表单被填写后),从表单发送电子邮件
- 当填写完表单点击提交按钮后,页面重新载入,可以看到邮件输入被重置,同时显示邮件发送成功的消息
注释:这个简易发送 e-mail 不安全,安全隐患参考:https://www.runoob.com/php/php-secure-mail.html