Blogger Information
Blog 25
fans 1
comment 1
visits 20512
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP流程控制for循环和while循环的语法及PHP表单验证方法---PHP培训线上班十期0108
高的PHP十期培训学习笔记
Original
665 people have browsed it

for()循环

for(): 计数式循环
for(循环变量的初始化; 循环条件; 更新循环条件) {…}

  1. //创建一个数组
  2. $arr = ['admin', '123456', '男', '安徽'];
  3. // 为了优化输出结果, 把结果转为字符串输出
  4. //创建一个空变量用于接收返回值
  5. $result = '';
  6. for ($i = 0; $i < count($arr); $i++) {
  7. // $result = $result . $arr[$i] .'<br>';
  8. // 上面的简写
  9. $result .= $arr[$i] .'<br>';
  10. }
  11. echo $result;

for()循环遍历 关联数组

next()向后移动,同时会获得当前数组元素的值
prev()向前移动,同时会获得当前数组元素的值
end()移动到最后一个数组元素,并获得它的值
reset()移动到第一个数组元素,并获得它的值
key()获得当前数组指针指向的数组元素的键名
current()获得当前数组指针指向的数组元素的值

while()循环

根据循环条件,只要条件满足就一直执行循环体中的语句
入口判断例子

  1. $i = 0;
  2. while ($i < count($arr)) {
  3. $result .= $arr[$i] .'<br>';
  4. // 必须将循环变量的更新操作写到while中
  5. // ++ 相当于 $i = $i + 1
  6. $i++;
  7. }
  8. echo $result;

常用函数

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

手写语法

PHP表单验证方法

使用PHP表单做一个会员登陆验证的表单

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>会员登陆</title>
  6. <style>
  7. body {
  8. background-color: #edeff0;
  9. }
  10. .dl {
  11. width: 450px;
  12. height: 300px;
  13. display: flex;
  14. flex-direction: column;
  15. font-size: 14px;
  16. color: #282828;
  17. margin: auto;
  18. background-color: #fff;
  19. box-sizing: border-box;
  20. border-radius: 10px;
  21. }
  22. .dl {
  23. box-shadow: 0 0 8px #ccc;
  24. }
  25. .dl > h3 {
  26. align-self: center;
  27. border-bottom: 3px solid lightcoral;
  28. font-weight: normal;
  29. font-size: 20px;
  30. }
  31. .dl > form {
  32. display: flex;
  33. flex-direction: column;
  34. padding: 20px;
  35. }
  36. .dl > form > span {
  37. display: flex;
  38. flex-flow: row nowrap;
  39. height: 60px;
  40. }
  41. .dl > form > span > label {
  42. width: 80px;
  43. position: relative;
  44. display:block;
  45. }
  46. .dl > form input {
  47. height: 30px;
  48. flex: 1;
  49. padding-left: 15px !important;
  50. box-shadow: none;
  51. border: 1px solid #ccc;
  52. border-radius: 4px;
  53. }
  54. .dl > form input:hover {
  55. border: 1px solid green;
  56. }
  57. .dl > form > span > button {
  58. background-color: green;
  59. border: none;
  60. color: #ffffff;
  61. font-size: 20px;
  62. width: 120px;
  63. height: 35px;
  64. margin: auto;
  65. }
  66. </style>
  67. </head>
  68. <body>
  69. <div class="dl">
  70. <h3>会员登陆</h3>
  71. <!-- method:提交验证方式,不指定的话默认为GET-->
  72. <form action="yz.php" method="post">
  73. <span>
  74. <label for="username">用户名:</label>
  75. <!-- required:必填 autofocus:光标定位-->
  76. <input type="text" name="username" id="username" placeholder="输入你的会员名" required autofocus>
  77. </span>
  78. <span>
  79. <label for="password">密码:</label>
  80. <input type="password" name="password" id="password" required>
  81. </span>
  82. <span><button>登陆</button></span>
  83. </form>
  84. </div>
  85. </body>
  86. </html>

  1. <?php
  2. //$_REQUEST: 请求数据的超全局变量,里面保存的是用户所有的请求数据
  3. //$_POST:用post方法传递过来的信息
  4. // 判断用户的请求类型是否合法
  5. //前台页面设置的是POST类型的请求,如果不是POST类型则不运行
  6. //$_SERVER[]获取全局信息,里面包含传递信息的方法等
  7. //$_SERVER['REQUEST_METHOD']:获取请求类型
  8. //这里假设会员名为admin 密码为123456
  9. if ($_SERVER['REQUEST_METHOD'] = 'POST') {
  10. if (!empty($_POST['username'])) $username = $_POST['username'];
  11. if (!empty($_POST['password'])) $password = $_POST['password'];
  12. // 判断用户名是否正确
  13. if ($username === 'admin') {
  14. // 判断密码正不正确
  15. if ($password === '123456') {
  16. echo '登陆成功';
  17. } else {
  18. exit('<script>alert("密码错误");history.back();</script>');
  19. }
  20. } else {
  21. exit('<script>alert("用户名错误");history.back();</script>');
  22. }
  23. } else {
  24. // 如果不是POST请求返回错误信息
  25. exit('<h3 style="color:red">请求类型错误!</h3>');
  26. }

用户名验证不成功返回信息:

密码验证不成功返回信息:

用户名和密码都成功返回信息:

备忘

$_REQUEST: 请求数据的超全局变量,里面保存的是用户所有的请求数据
$_SERVER[]获取全局信息,里面包含传递信息的方法等
$_SERVER['REQUEST_METHOD']:获取请求类型

$_POST:用post方法传递过来的信息
$_GET[]用get方法传递过来的信息

count()判断数组元素个数
strlen()判断字符串长度

密码加密方式:
md5()产生32位加密字符串
sha1();40位随机字符串;

三元运算符, 将双分支进行简化
条件 ? true : false

  1. // $_POST['grade'] = isset($_POST['grade']) ? $_POST['grade'] : 70;
  2. // echo $_POST['grade'];
  3. // $grade = isset($_POST['grade']) ? $_POST['grade'] : 80;
  4. // // php7+
  5. // $grade = $_POST['grade'] ?? 90;
  6. // echo $grade;

(2)、isset();和 empty();区别:
empty();判断传递过来的值是否为空, 0, null, false
isset();检查请求变量是否设置, 并且值不能为NULL,用在设置请求变量默认值;

JS弹窗函数:<script>alert("弹出信息");</script>;
JS返回上页函数:<script>history.back();</script>

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:isset()和empty()的区别, 有一些工作几年的php程序员, 还没有搞明白,恭喜你
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments