批改状态:合格
老师批语:isset()和empty()的区别, 有一些工作几年的php程序员, 还没有搞明白,恭喜你
for(): 计数式循环
for(循环变量的初始化; 循环条件; 更新循环条件) {…}
//创建一个数组$arr = ['admin', '123456', '男', '安徽'];// 为了优化输出结果, 把结果转为字符串输出//创建一个空变量用于接收返回值$result = '';for ($i = 0; $i < count($arr); $i++) {// $result = $result . $arr[$i] .'<br>';// 上面的简写$result .= $arr[$i] .'<br>';}echo $result;

next()向后移动,同时会获得当前数组元素的值prev()向前移动,同时会获得当前数组元素的值end()移动到最后一个数组元素,并获得它的值reset()移动到第一个数组元素,并获得它的值key()获得当前数组指针指向的数组元素的键名current()获得当前数组指针指向的数组元素的值
根据循环条件,只要条件满足就一直执行循环体中的语句
入口判断例子
$i = 0;while ($i < count($arr)) {$result .= $arr[$i] .'<br>';// 必须将循环变量的更新操作写到while中// ++ 相当于 $i = $i + 1$i++;}echo $result;

count(): 计算数组元素的数量strlen(): 计算字符串长度trim(), rtrim(), ltrim(): 是从字符串二边,右边, 左边删除指定的字符,默认删除的是空格mt_rand(min, max): 产生指定范围的随机数

使用PHP表单做一个会员登陆验证的表单
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>会员登陆</title><style>body {background-color: #edeff0;}.dl {width: 450px;height: 300px;display: flex;flex-direction: column;font-size: 14px;color: #282828;margin: auto;background-color: #fff;box-sizing: border-box;border-radius: 10px;}.dl {box-shadow: 0 0 8px #ccc;}.dl > h3 {align-self: center;border-bottom: 3px solid lightcoral;font-weight: normal;font-size: 20px;}.dl > form {display: flex;flex-direction: column;padding: 20px;}.dl > form > span {display: flex;flex-flow: row nowrap;height: 60px;}.dl > form > span > label {width: 80px;position: relative;display:block;}.dl > form input {height: 30px;flex: 1;padding-left: 15px !important;box-shadow: none;border: 1px solid #ccc;border-radius: 4px;}.dl > form input:hover {border: 1px solid green;}.dl > form > span > button {background-color: green;border: none;color: #ffffff;font-size: 20px;width: 120px;height: 35px;margin: auto;}</style></head><body><div class="dl"><h3>会员登陆</h3><!-- method:提交验证方式,不指定的话默认为GET--><form action="yz.php" method="post"><span><label for="username">用户名:</label><!-- required:必填 autofocus:光标定位--><input type="text" name="username" id="username" placeholder="输入你的会员名" required autofocus></span><span><label for="password">密码:</label><input type="password" name="password" id="password" required></span><span><button>登陆</button></span></form></div></body></html>

<?php//$_REQUEST: 请求数据的超全局变量,里面保存的是用户所有的请求数据//$_POST:用post方法传递过来的信息// 判断用户的请求类型是否合法//前台页面设置的是POST类型的请求,如果不是POST类型则不运行//$_SERVER[]获取全局信息,里面包含传递信息的方法等//$_SERVER['REQUEST_METHOD']:获取请求类型//这里假设会员名为admin 密码为123456if ($_SERVER['REQUEST_METHOD'] = 'POST') {if (!empty($_POST['username'])) $username = $_POST['username'];if (!empty($_POST['password'])) $password = $_POST['password'];// 判断用户名是否正确if ($username === 'admin') {// 判断密码正不正确if ($password === '123456') {echo '登陆成功';} else {exit('<script>alert("密码错误");history.back();</script>');}} else {exit('<script>alert("用户名错误");history.back();</script>');}} else {// 如果不是POST请求返回错误信息exit('<h3 style="color:red">请求类型错误!</h3>');}
用户名验证不成功返回信息:
密码验证不成功返回信息:
用户名和密码都成功返回信息:
$_REQUEST: 请求数据的超全局变量,里面保存的是用户所有的请求数据$_SERVER[]获取全局信息,里面包含传递信息的方法等$_SERVER['REQUEST_METHOD']:获取请求类型
$_POST:用post方法传递过来的信息$_GET[]用get方法传递过来的信息
count()判断数组元素个数strlen()判断字符串长度
密码加密方式:md5()产生32位加密字符串sha1();40位随机字符串;
三元运算符, 将双分支进行简化条件 ? true : false
// $_POST['grade'] = isset($_POST['grade']) ? $_POST['grade'] : 70;// echo $_POST['grade'];// $grade = isset($_POST['grade']) ? $_POST['grade'] : 80;// // php7+// $grade = $_POST['grade'] ?? 90;// echo $grade;
(2)、isset();和 empty();区别:empty();判断传递过来的值是否为空, 0, null, false;isset();检查请求变量是否设置, 并且值不能为NULL,用在设置请求变量默认值;
JS弹窗函数:<script>alert("弹出信息");</script>;
JS返回上页函数:<script>history.back();</script>
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号