if 和 switch

1、if(){} 条件

  1. //(1)and && 与 两个条件同时为真,才是真
  2. $age1=19;
  3. if($age1>=18 && $age1<=45){
  4. echo '青壮年';
  5. }
  6. //运行结果:青壮年
  7. echo '<hr />';
  8. //(2)or || 或
  9. $tel= '';
  10. $mob='';
  11. if(!$tel || $mob){
  12. echo '手机和电话必填一个';
  13. }
  14. //运行结果:手机和电话必填一个
  15. echo '<hr />';
  16. //(3)xor 亦或
  17. $p1='男';
  18. $p2='女';
  19. if($p1=='男' xor $p2=='男'){
  20. echo '异性可以结婚';
  21. }else{
  22. echo '同性不能结婚';
  23. }
  24. //运行结果:异性可以结婚
  25. echo '<hr />';
  26. //(4)! 取反
  27. $name='';
  28. if(!$name){
  29. echo '姓名不能为空';
  30. }
  31. //运行结果:姓名不能为空
  32. echo '<hr />';

2、switch(){} 流程判断

  1. $age=77;
  2. switch($age){
  3. case $age <=6:
  4. echo '幼儿';
  5. break;
  6. case $age >=6 && $age <=12:
  7. echo '少儿';
  8. break;
  9. case $age >=13 && $age <=17:
  10. echo '青少年';
  11. break;
  12. case $age >=18 && $age <=45:
  13. echo '青壮年';
  14. break;
  15. case $age >=46 && $age <=69:
  16. echo '中年';
  17. break;
  18. default:
  19. echo '老年';
  20. }
  21. //运行结果:老年

php8.0 改动和新增

  • php8.0 改动

    1. var_dump(0=='1234566');
    2. //运行结果 bool(false)
    3. //php8.0之前为真
  • match(){} php8.0 新增 严格区分大小写

  1. $nums=2;
  2. echo match($nums){
  3. 1=>'未审核',
  4. 2=>'已审核',
  5. 3=>'拒绝审核',
  6. default=>'未知状态'
  7. };
  8. //运行结果:已审核

逻辑函数

  1. //isset() 只要存在即为真 0、''、false 没有变量或null为假
  2. //$name2='';
  3. if(!isset($name2)){
  4. echo '没有姓名';
  5. }
  6. //运行结果:没有姓名
  7. echo '<hr />';
  8. //empty() null、0、''、false 为真
  9. $name3='';
  10. if(empty($name3)){
  11. echo '没有姓名';
  12. }
  13. //运行结果:没有姓名
  14. echo '<hr />';
  15. $arr=[];
  16. if(!empty($arr)){
  17. echo '执行';
  18. foreach ($arr as $v){
  19. }
  20. }
  21. echo '<hr />';
  22. echo gettype($arr);//获取变量类型
  23. // is_string()判断类型是否为字符串
  24. //is_int 判断整型 常用
  25. //is_float
  26. //is_bool
  27. //is_null
  28. //is_array 常用 如果是数组循环,不是数组不循环
  29. //is_object

实力演练 计算器

  1. <?php
  2. //获取传值并判断传值是否存在
  3. $num1= isset($_GET['num1']) ? $_GET['num1'] :'';
  4. $opt= isset($_GET['opt']) ? $_GET['opt'] :'';
  5. $num2= isset($_GET['num2']) ? $_GET['num2'] :'';
  6. ?>
  7. <!doctype html>
  8. <html lang="zh_cn">
  9. <head>
  10. <meta charset="UTF-8">
  11. <meta name="viewport"
  12. content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  13. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  14. <title>计算器</title>
  15. </head>
  16. <body>
  17. <div class="box">
  18. <h1>计算器</h1>
  19. <form action="" method="get">
  20. <input type="number" name="num1" value="<?php echo $num1; ?>" placeholder="请输入第一个数字">
  21. <select name="opt">
  22. <option value="+" <?php if($opt=='+'){echo 'selected';} ?>>+</option>
  23. <option value="-" <?php if($opt=='-'){echo 'selected';} ?>>-</option>
  24. <option value="*" <?php if($opt=='*'){echo 'selected';} ?>>*</option>
  25. <option value="/" <?php if($opt=='/'){echo 'selected';} ?>>/</option>
  26. <option value="%" <?php if($opt=='%'){echo 'selected';} ?>>%</option>
  27. </select>
  28. <input type="number" name="num2" value="<?php echo $num2; ?>" placeholder="请输入第二个数字">
  29. <input type="submit" value="计算">
  30. </form>
  31. </div>
  32. </body>
  33. </html>
  34. <?php
  35. //print_r($_GET);
  36. //判断输入数字是否小于0
  37. if($num1<0 ||$num2<0 ){
  38. echo '输入的数字不得小于0';
  39. exit();
  40. }
  41. //判断传值是否为空
  42. if(!empty($_GET)){
  43. //判断运算符号
  44. switch ($opt){
  45. case '+':
  46. $num=$num1+$num2;
  47. break;
  48. case '-':
  49. $num=$num1-$num2;
  50. break;
  51. case '*':
  52. $num=$num1*$num2;
  53. break;
  54. case '/':
  55. $num=$num1/$num2;
  56. break;
  57. case '%':
  58. $num=$num1%$num2;
  59. break;
  60. }
  61. //判断运算结果是否为0
  62. if(!$num==0){
  63. echo $num1 . $opt . $num2 .'的运算结果是:'. $num;
  64. }else{
  65. echo '计算结果不得为0';
  66. }
  67. }
  68. ?>

效果图
计算器

更多相关文章

  1. PHP如何判断两个数中哪个数最接近值100
  2. PHP算法练习八:判断给定的三个数是否能构成直角三角形
  3. PHP计算器
  4. 【前端】打开网站时loading是怎么判断资源是否加载完的?
  5. 【前端】如何用JS判断网页在APP环境中打开?
  6. 【前端】js如何获取tree型数组的最大深度呢?
  7. 第十二课 数组循环
  8. PHP检查空值的方法总结
  9. 如何判断一个关键词的竞争性?

随机推荐

  1. 手工打包APK
  2. Android(安卓)管理多个fragment(处理Acti
  3. android 地理位置共享服务
  4. 《Android面试宝典》学习笔记(第四章:对话
  5. Android 给贪吃蛇游戏加背景音乐
  6. Android:adb常用命令汇总
  7. 下载adt-bundle-linux-x86_64-20140702.z
  8. g1安装android软件详细攻略
  9. Android的多媒体技术――MediaPlayer实现
  10. android中进行https连接的方式的详解