博客列表 >1月8日 学号:478291 PHP循环语句

1月8日 学号:478291 PHP循环语句

Lin__
Lin__原创
2020年01月10日 22:12:55821浏览

字符串操作函数

  • strlen(),统计字符串的长度
  • trim() | ltrim() | rtrim(),去除字符串两端的指定字符 | 去除左侧指定字符 | 去除右侧指定字符,不设置默认为空格;使用方式:trim(‘要操作的字符串’,’要去除的字符串’)
  • 示例与运行结果:
  1. <?php
  2. $str = '*Hello world!*';
  3. echo strlen($str).'<br />';
  4. echo trim($str,'*').'<br />';
  5. echo ltrim($str,'*').'<br />';
  6. echo rtrim($str,'*').'<br />';

数组操作函数

  • count(),计算数组的元素个数
  • key(), 返回当前指向元素的键名
  • current(),返回当前指向元素的值
  • next(), 指向当前元素的指针移动到下一个元素的位置,返回当前元素的值
  • prev(),指向当前元素的指针移动到上一个元素的位置
  • reset(), 把数组的内部指针指向第一个元素
  • end(), 把数组的内部指针指向最后一个元素
  • 示例与运行结果:
  1. <?php
  2. $arr=[1,2,3,4,5];
  3. echo count($arr).'<br />';
  4. echo key($arr).'<br />';
  5. echo current($arr).'<br />';
  6. echo next($arr).'<br />';
  7. echo prev($arr).'<br />';
  8. echo reset($arr).'<br />';
  9. echo end($arr).'<br />';

其他函数

  • mt_rand(),在区间之间生成一个随机数。参数有两个:最小值,最大值
  • range(), 创建一个包含指定范围的元素的数组 。参数: 数组的最低值 , 数组的最高值 ,数组元素之间的步值(可选)
  • isset(),判断变量是否被定义,若变量存在,即使值为NULL,也返回true
  • empty(),判断变量是否有值,变量的值为NULL或为0时,返回true
  • 示例与运行结果:
  1. <?php
  2. echo '生成1~10之间的随机数:'.mt_rand(1,10).'<br />';
  3. echo '生成1~10之间的数组:'.'<br />';
  4. var_dump(range(1,10));
  5. $name;
  6. echo isset($name).'<br />';
  7. echo empty($name).'<br />';

for循环语句

  • 循环执行代码块指定的次数,如果确定循环的次数,可以使用for
  • 语法:
  1. for (初始化循环计数器的值; 循环条件; 更新循环计数器的值) {
  2. 代码块
  3. }
  • 实现原理:如果是第一轮循环先初始化计数器的值,然后判断是否满足循环条件,满足执行代码块中的代码,更新循环计数器的值,进行下一轮循环
  • 示例与运行结果:
  1. <?php
  2. for($i=1;$i<=5;$i++){
  3. echo '当前是第'.$i.'次循环<br />';
  4. }
  5. echo '<hr />';
  6. //for循环索引素组
  7. $arr=[1,2,3,4];
  8. for($i=0;$i<count($arr);$i++){
  9. echo '第'.$i.'个元素的值是'.$arr[$i].'<br />';
  10. }
  11. echo '<hr />';
  12. //for循环关联数组
  13. $arr2=['name'=>'Lin','sex'=>'女','age'=>25];
  14. for($i=0;$i<count($arr2);$i++){
  15. echo key($arr2).'的值是'.current($arr2).'<br />';
  16. next($arr2);
  17. }

whiledo..while循环语句

  • 只要指定的条件为真,会执行代码块,不能确定循环次数时可以使用
  • while先判断是否符合条件,再执行代码块。do..while先执行再判断,至少执行一次。
  • 语法:
  1. while (循环条件) {
  2. 代码块
  3. }
  4. do {
  5. 代码块
  6. } while (循环条件);
  • 示例与运行结果:
  1. <?php
  2. $a=0;
  3. while($a>0){
  4. echo '当前是第'.$a.'次循环<br />';
  5. $a++;//等同于$a=$a+1
  6. }
  7. echo '<hr />';
  8. $b=0;
  9. do{
  10. echo '当前是第'.$b.'次循环<br />';
  11. }while($b>0);
  12. echo '<hr />';
  13. //while循环索引素组
  14. $arr=[1,2,3,4];
  15. $index=0;
  16. while($index<count($arr)){
  17. echo '第'.$index.'个元素的值是'.$arr[$index].'<br />';
  18. $index++;
  19. }
  20. echo '<hr />';
  21. //while循环关联数组
  22. $index=0;
  23. $arr2=['name'=>'Lin','sex'=>'女','age'=>25];
  24. while($index<count($arr2)){
  25. echo key($arr2).'的值是'.current($arr2).'<br />';
  26. next($arr2);
  27. $index++;
  28. }

三元运算符

  • (表达式1 | 变量) ? (表达式2 | 变量) : (表达式3 | 变量),表达式1为true时,结果为表达式2,否则结果为表达式3
  • (表达式1 | 变量) ? :(表达式2 | 变量),当表达式1结果为true时,结果为表达式1,否则为表达式2.该语法PHP5.3及以上版本支持
  • (表达式1 | 变量) ? ?(表达式2 | 变量),当表达式1结果为true时,结果为表达式1,否则为表达式2.该语法PHP7及以上版本支持

  • 示例与运行结果:

  1. <?php
  2. $a = 1;
  3. echo isset($a)?$a:0;
  4. echo '<br />';
  5. echo $a??0;
  6. echo '<br />';
  7. echo $a?:0;

表单验证

  • $_POST, 预定义变量,用于收集post提交方式 的表单中的值
  • $_GET, 预定义变量,用于收集get提交方式 的表单中的值
  • $_REQUEST, 预定义变量,可以收集postget两种提交方式的表单中的值

  • 示例与运行结果:

  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>PHP表单验证</title>
  6. <style>
  7. form{
  8. width: 400px;
  9. height: 200px;
  10. background-color: #0cbadf;
  11. border-radius: 5px;
  12. text-align: center;
  13. margin: auto;
  14. }
  15. form > div{
  16. display: grid;
  17. grid-template-columns: 100px 200px;
  18. margin: 20px 0;
  19. grid-column-gap:10px;
  20. }
  21. form > div > label{
  22. text-align: right;
  23. }
  24. form > div > input{
  25. border-radius: 5px;
  26. }
  27. </style>
  28. </head>
  29. <body>
  30. <form action="index.php" method="post">
  31. <h3>用户登录</h3>
  32. <div>
  33. <label for="username">用户名</label>
  34. <input type="text" name="username" id="username" required autofocus>
  35. </div>
  36. <div>
  37. <label for="password">密码</label>
  38. <input type="password" name="password" id="password" required autofocus>
  39. </div>
  40. <input type="submit" value="登录">
  41. </form>
  42. </body>
  43. </html>
  1. <?php
  2. $username=$_POST['username'];
  3. $password=$_POST['password'];
  4. if(empty($username)){
  5. echo "<script>alert('请输入用户名');</script>";
  6. exit;
  7. }elseif(strlen($username)>20){
  8. echo "<script>alert('用户名长度不得超过20个字符');</script>";
  9. exit;
  10. }
  11. if(empty($password)){
  12. echo "<script>alert('请输入密码');</script>";
  13. exit;
  14. }elseif(strlen($password)<6 || strlen($password)>18){
  15. echo "<script>alert('密码长度在6~18个字符之间');</script>";
  16. exit;
  17. }
  18. echo '登陆成功!欢迎你,'.$username;



声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议