十天学会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怎样调用MSSQL的存储过程
Oct 09 PHP
PHP VS ASP
Oct 09 PHP
php连接mssql数据库的几种方法
Feb 21 PHP
基于empty函数的输出详解
Jun 17 PHP
PHP实现利用MySQL保存session的方法
Aug 23 PHP
php中file_exists函数使用详解
May 08 PHP
百度地图API使用方法详解
Aug 25 PHP
PHP中类的继承和用法实例分析
May 24 PHP
基于PHP微信红包的算法探讨
Jul 21 PHP
PHP实现数据库统计时间戳按天分组输出数据的方法
Oct 10 PHP
解决laravel session失效的问题
Oct 14 PHP
php字符串倒叙
Apr 01 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音乐采集(部分代码)
2007/02/14 PHP
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
2009/08/07 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
2014/06/13 PHP
分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
2015/08/23 PHP
PHP结合Mysql数据库实现留言板功能
2016/03/04 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
PHP 记录访客的浏览信息方法
2018/01/29 PHP
新页面打开实际尺寸的图片
2006/08/25 Javascript
iframe 自适应高度[在IE6 IE7 FF下测试通过]
2009/04/13 Javascript
jquery.validate使用攻略 第三部
2010/07/01 Javascript
一个网马的tips实现分析
2010/11/28 Javascript
JS实现程序暂停与继续功能代码解读
2013/10/10 Javascript
js实现点击链接后窗口缩小并居中的方法
2015/03/02 Javascript
简单分析javascript面向对象与原型
2015/05/21 Javascript
在JavaScript中处理字符串之link()方法的使用
2015/06/08 Javascript
javascript实现的淘宝旅行通用日历组件用法实例
2015/08/03 Javascript
JS从一组数据中找到指定的单条数据的方法
2016/06/02 Javascript
设置jQueryUI DatePicker默认语言为中文
2016/06/04 Javascript
浅谈js内置对象Math的属性和方法(推荐)
2016/09/19 Javascript
JavaScript获取当前时间向前推三个月的方法示例
2017/02/04 Javascript
详解JS中遍历语法的比较
2017/04/07 Javascript
详解mpvue开发小程序小总结
2018/07/25 Javascript
Vue源码解析之数据响应系统的使用
2019/04/24 Javascript
layui--js控制switch的切换方法
2019/09/03 Javascript
python网络编程学习笔记(三):socket网络服务器
2014/06/09 Python
解决Keras使用GPU资源耗尽的问题
2020/06/22 Python
HTML5到底会有什么发展?HTML5的前景展望
2015/07/07 HTML / CSS
AmazeUI在模态框中嵌入表单形成模态输入框
2020/08/20 HTML / CSS
Doyoueven官网:澳大利亚健身服饰和配饰品牌
2019/03/24 全球购物
经管应届生求职信
2013/11/17 职场文书
校园活动宣传方案
2014/03/28 职场文书
房产转让协议书(2014版)
2014/09/30 职场文书
关于战胜挫折的名言警句大全!
2019/07/05 职场文书
python数据可视化JupyterLab实用扩展程序Mito
2021/11/20 Python
MySQL范围查询优化的场景实例详解
2022/06/10 MySQL
SQL中去除重复数据的几种方法汇总(窗口函数对数据去重)
2023/05/08 MySQL