十天学会php之第二天


Posted in PHP onOctober 09, 2006

  学习目的:掌握php的流程控制

  1、if..else 循环有三种结构

  第一种是只有用到 if 条件,当作单纯的判断。解释成 "若发生了某事则怎样处理"。语法如下:

  if (expr) { statement }

  其中的 expr 为判断的条件,通常都是用逻辑运算符号当判断的条件。而 statement 为符合条件的执行部分程序,若程序只有一行,可以省略大括号 {}。

  范例:本例省略大括号。

  <?php
  if ($state==1)echo "哈哈" ;
  ?>

  这里特别注意的是,判断是否相等是==而不是=,ASP程序员可能常犯这个错误,= 是赋值。

  范例:本例的执行部分有三行,不可省略大括号。

  <?php
  if ($state==1) {
  echo "哈哈 ;
  echo "<br>" ;
  }
  ?>

  第两种是除了 if 之外,加上了 else 的条件,可解释成 "若发生了某事则怎样处理,否则该如何解决"。语法如下

  if (expr) { statement1 } else { statement2 } 范例:上面的例子来修改成更完整的处理。其中的 else 由于只有一行执行的指令,因此不用加上大括号。
  <?php
  if ($state==1) {
  echo "哈哈" ;
  echo "<br>";
  }
  else{
  echo "呵呵";
  echo "<br>";
  }
  ?>

  第三种就是递归的 if..else 循环,通常用在多种决策判断时。它将数个 if..else 拿来合并运用处理。

  直接看下面的例子

  <?php
  if ( $a > $b ) {
  echo "a 比 b 大" ;
  } elseif ( $a == $b ) {
  echo "a 等于 b" ;
  } else {
  echo "a 比 b 小" ;
  }
  ?>

  上例只用二层的 if..else 循环,用来比较 a 和 b 两个变量。实际要使用这种递归 if..else 循环时,请小心使用,因为太多层的循环容易使设计的逻辑出问题,或者少打了大括号等,都会造成程序出现莫名其妙的问题。

  2、 for 循环就单纯只有一种,没有变化,它的语法如下

  for (expr1; expr2; expr3) { statement }

  其中的 expr1 为条件的初始值。expr2 为判断的条件,通常都是用逻辑运算符号 (logical operators) 当判断的条件。expr3 为执行 statement 后要执行的部份,用来改变条件,供下次的循环判断,如加一..等等。而 statement 为符合条件的执行部分程序,若程序只有一行,可以省略大括号 {}。

  下例是用 for 循环写的的例子。

  <?php
  for ( $i = 1 ; $i <= 10 ; $i ++) {
  echo "这是第".$i."次循环<br>" ;
  }
  ?>

  3、 switch 循环,通常处理复合式的条件判断,每个子条件,都是 case 指令部分。在实作上若使用许多类似的 if 指令,可以将它综合成 switch 循环。

  语法如下

  switch (expr) { case expr1: statement1; break; case expr2: statement2; break; default: statementN; break; }

  其中的 expr 条件,通常为变量名称。而 case 后的 exprN,通常表示变量值。冒号后则为符合该条件要执行的部分。注意要用 break 跳离循环。

  <?php
  switch ( date ( "D" )) {
  case "Mon" :
  echo "今天星期一" ;
  break;
  case "Tue" :
  echo "今天星期二" ;
  break;
  case "Wed" :
  echo "今天星期三" ;
  break;
  case "Thu" :
  echo "今天星期四" ;
  break;
  case "Fri" :
  echo "今天星期五" ;
  break;
  default:
  echo "今天放假" ;
  break;
  }
  ?>

  这里需要注意的是break;别遗漏了,default,省略是可以的。

  很明显的,上述的例子用 if 循环就很麻烦了。当然在设计时,要将出现机率最大的条件放在最前面,最少出现的条件放在最后面,可以增加程序的执行效率。上例由于每天出现的机率相同,所以不用注意条件的顺序。

  今天就说到这里,明天开始说数据库的使用。

 

PHP 相关文章推荐
PHP循环获取GET和POST值的代码
Apr 09 PHP
从康盛产品(discuz)提取出来的模板类
Jun 28 PHP
PHP连接SQLSERVER 注意事项(附dll文件下载)
Jun 28 PHP
使用php+apc实现上传进度条且在IE7下不显示的问题解决方法
Apr 25 PHP
PHP实现对文本数据库的常用操作方法实例演示
Jul 04 PHP
php中删除、清空session的方式总结
Oct 09 PHP
php实现smarty模板无限极分类的方法
Dec 07 PHP
PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例
Jan 07 PHP
php实现HTML实体编号与非ASCII字符串相互转换类实例
Nov 02 PHP
PHP实现的防止跨站和xss攻击代码【来自阿里云】
Jan 29 PHP
PHP给源代码加密的几种方法汇总(推荐)
Feb 06 PHP
Laravel的加密解密与哈希实例讲解
Mar 24 PHP
十天学会php之第一天
Oct 09 #PHP
十天学会php之第六天
Oct 09 #PHP
用PHP编写PDF文档生成器
Oct 09 #PHP
PHP设计聊天室步步通
Oct 09 #PHP
编写PHP的安全策略
Oct 09 #PHP
MVC模式的PHP实现
Oct 09 #PHP
使用PHP和XSL stylesheets转换XML文档
Oct 09 #PHP
You might like
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
PHP获取文件的MD5值并判断是否被修改的例子
2014/06/19 PHP
yii,CI,yaf框架+smarty模板使用方法
2015/12/29 PHP
php强大的时间转换函数strtotime
2016/02/18 PHP
javascript-简单的日历实现及Date对象语法介绍(附图)
2013/05/30 Javascript
JS实现随机数生成算法示例代码
2013/08/08 Javascript
iframe的父子窗口之间的对象相互调用基本用法
2013/09/03 Javascript
页面载入结束自动调用js函数示例
2013/09/23 Javascript
js中switch case循环实例代码
2013/12/30 Javascript
js获取下拉列表的值和元素个数示例
2014/05/07 Javascript
JavaScript判断表单提交时哪个radio按钮被选中的方法
2015/03/21 Javascript
JS 动态判断PC和手机浏览器实现代码
2016/09/21 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
AngularJS入门示例之Hello World详解
2017/01/04 Javascript
原生js实现放大镜
2017/02/20 Javascript
Vue.js中轻松解决v-for执行出错的三个方案
2017/06/09 Javascript
JavaScript中如何判断一个值的类型
2017/09/15 Javascript
动态加载、移除js/css文件的示例代码
2018/03/20 Javascript
Vue Router的懒加载路径的解决方法
2018/06/21 Javascript
原生JS封装_new函数实现new关键字的功能
2018/08/12 Javascript
浅谈Vue 性能优化之深挖数组
2018/12/11 Javascript
浅谈Vue CLI 3结合Lerna进行UI框架设计
2019/04/14 Javascript
javascript原型链学习记录之继承实现方式分析
2019/05/01 Javascript
js 根据对象数组中的属性进行排序实现代码
2019/09/12 Javascript
nuxt 实现在其它js文件中使用store的方式
2020/11/05 Javascript
Python中输出ASCII大文字、艺术字、字符字小技巧
2015/04/28 Python
Python 点击指定位置验证码破解的实现代码
2019/09/11 Python
Python基础之变量基本用法与进阶详解
2020/01/03 Python
css3 伪类选择器快速复习小结
2019/09/10 HTML / CSS
Booking.com荷兰:全球酒店网上预订
2017/08/22 全球购物
意大利单身交友网站:Meetic
2020/07/12 全球购物
机械个人求职信范文
2014/01/24 职场文书
低碳环保倡议书
2014/04/14 职场文书
电子商务专业应届毕业生求职信
2014/06/21 职场文书
八达岭长城导游词
2015/01/30 职场文书
项目安全员岗位职责
2015/02/15 职场文书