PHP学习之路(五)

2017.08.13

Day  5  周日  晴

PHP-顺序结构

顺序结构就像一条直线,按着顺序一直往下执行。我们编写的代码默认都是按照顺序结构执行的。


PHP条件结构之if…else…

条件结构就像一个岔路口,可以向左走,也可以向右走。比如上洗手间,我们知道我们的性别,这时候我们需要根据洗手间提供的条件,左边男洗手间,右边女洗手间,或者正好相反,其中性别就是这个条件结构的条件。再比如,现在的分数都流行使用A、B、C来分级,假设考试成绩是93分,可以将其设置为等级A,考试成绩是87,可以将其设置为等级B,这里分数区间即为条件结构中的条件。

PHP中的“if…else…”语法,如下:

<?php
if(条件){
     //分配服务器干的任务A
}else{
     //分配服务器干的任务B
}
?>

通过条件判断,若返回值为布尔值TRUE,则执行任务A,若返回值为FALSE,则执行任务B。


PHP条件结构之if…else if…

PHP中的“if…else if…”语法,如下:

<?php
if(条件一){
     //分配服务器干的任务A
}else if(条件二){
     //分配服务器干的任务B
}
?>

通过条件一判断,若返回值为布尔值为TRUE,则执行任务A,若返回值为FALSE,则判断条件二,若返回值为布尔值TRUE,则执行任务B,否则既不执行任务A,也不执行任务B。服务器会继续往下执行其他任务。


PHP条件结构之if…else if…

PHP中的“if…else if…”语法,如下:

<?php
if(条件一){
     //分配服务器干的任务A
}else if(条件二){
     //分配服务器干的任务B
}
?>

通过条件一判断,若返回值为布尔值为TRUE,则执行任务A,若返回值为FALSE,则判断条件二,若返回值为布尔值TRUE,则执行任务B,否则既不执行任务A,也不执行任务B。服务器会继续往下执行其他任务。


PHP条件结构之switch…case…

PHP中的“switch...case...”语法,如下:

<?php
switch (条件)
{
case 条件值一:
  //任务一
  break;
case 条件值二:
  //任务二
  break;
default:
  //默认任务
}
?>

首先判断条件,若条件的返回值为条件值一,则执行任务一,若条件返回的值为条件值二,则执行任务二,若条件的返回值既不是条件值一也不是条件值二,则执行默认任务。break的作用是结束switch(后面会有专门举例说明),使用 switch 语句可以避免冗长的 “if..else if..else”代码块。


PHP条件结构之switch…case…中的break

break的作用是阻止代码进入下一个case 中继续执行。

任务

通过A例子有break和B例子没有break可以很明显地看出它的作用。A例子代码和B例子代码如图所示:

A例子中,输出$sum值为20,B例子中,输出$sum值为40。在A例子中,执行了第二个case ,$sum变为20,然后break跳出了switch,去执行其他的任务。在B例子中,执行了第二个case , $sum变为20,由于没有break,继续执行第三个case,然后又执行default,$sum变为了40。


PHP中循环结构之while循环语句

循环结构就像一圈圈地跑足球场,跑完一圈再跑一圈。也就是说,在符合的条件下,重复执行某项任务。像400米一圈的跑道,跑800米的话就跑2圈,当跑完第一圈接着跑第二圈,第二圈结束已经达到800米,终止跑步。

在PHP中,while循环语句如下:

<?php
while(条件){
     //执行任务
}
?>

首先判断某个条件是否符合(条件返回值是否为TRUE),若符合则执行任务,执行完毕任务,再判断条件是否满足要求,符合则重复执行此任务,否则结束任务。


PHP中循环结构之do while循环语句

在PHP中循环语句还有另一种:do...while循环语句语法如下:

<?php
do{
     //执行任务
}while(条件)
?>

首先执行任务(上一节的while语句是先判断条件是否成立,再执行任务),执行任务完毕,判断某个条件是否符合(条件返回值是否为TRUE),若符合则再次执行任务,执行完毕任务,继续判定条件。


PHP中循环结构之do…while语句的运用优势举例

while和do...while可以根据具体情况选用。假设有一种棋类游戏,首先掷骰子,若不为6,前进骰子的点数的步长;若为6,前进骰子的点数的步长,并可以再掷一次。

键入:

<?php
//while例子
$sum = 0;
$num = rand(1,6); //获取1至6的随机数,模拟掷骰子
$sum = $sum + $num;//前进步长
while($num==6){
$num = rand(1,6);//获取1至6的随机数,模拟掷骰子
$sum = $sum + $num;//前进步长
};
echo "while例子执行完毕,前进:".$sum ."<br />";
//do...while例子
$sum = 0;
do{
$num = rand(1,6);//获取1至6的随机数,模拟掷骰子
$sum = $sum + $num;//前进步长
}while($num==6);
echo "do...while例子执行完毕,前进:".$sum ."<br />";
?>

输出:

while例子执行完毕,前进:9(随机)
do...while例子执行完毕,前进:3(随机)


PHP中循环结构之for循环语句

在PHP中还有一种循环语句,for循环语句结构如下:

<?php
for(初始化;循环条件;递增项){
      //执行任务
}
?>

for 语句中,“初始化”在循环开始前无条件求值一次,“循环条件”在每次循环开始前求值。如果值为 TRUE,则继续循环,执行循环体语句(执行任务)。如果值为 FALSE,则终止循环。“递增项”在每次循环之后被求值(执行)。其常用于循环执行代码块指定的次数。


PHP中循环结构之foreach循环语句(任务一)

在PHP中foreach循环语句,常用于遍历数组,一般有两种使用方式:不取下标、取下标。

(1)只取值,不取下标

<?php
 foreach (数组 as 值){
//执行的任务
}
?>

(2)同时取下标和值

<?php
foreach (数组 as 下标 => 值){
 //执行的任务
}
?>

键入:

<?php
$students = array(
‘2010‘=>‘令狐冲‘,
‘2011‘=>‘林平之‘,
‘2012‘=>‘曲洋‘,
‘2013‘=>‘任盈盈‘,
‘2014‘=>‘向问天‘,
‘2015‘=>‘任我行‘,
‘2016‘=>‘冲虚‘,
‘2017‘=>‘方正‘,
‘2018‘=>‘岳不群‘,
‘2019‘=>‘宁中则‘,
);//10个学生的学号和姓名,用数组存储

//使用循环结构遍历数组,获取学号和姓名
foreach($students as $v)
{
echo $v;//输出(打印)姓名
echo "<br />";
}
?>

其中"=>"标明

键名为2013,值为任盈盈

//使用循环结构遍历数组,获取学号和姓名
foreach($students as $key =>$v)//为什么????

{
echo $key.":".$v;//输出(打印)学号:姓名
echo "<br />";
}
?>




这就是今天的分量~

2017/08/13

21:00


 
时间: 2024-10-07 05:31:55

PHP学习之路(五)的相关文章

react.js学习之路五

最近没时间写博客,但是我一直在学习react,我发现react是一个巨大的坑,而且永远填不完的坑 关于字符串的拼接: 在react中,字符串的拼接不允许出现双引号"" ,只能使用单引号' ',例如这样就是可以的,这经常用在使用变量,变换路径的情况下. <img src={'img/sort_goods_0'+(index+1)+'x.png'} />

python学习之路 五:函数式编程

本节重点 掌握函数的作用.语法 掌握作用域.全局变量与局部变量知识 一.函数编程基础知识 1.基本定义 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需要调用函数名即可. 2.特性 ?(1)减少重复代码 ?(2)使程序变得可扩展 ?(3)使程序变得易维护 3.语法定义 def sayhi(): # 函数名 print("Hello,i'm nobody!") 二.函数参数 1.形参变量 只有在被调用时才分配内存单元,在调用结束时,即可释放所分配的内存单元.

Swift学习之路五(构造过程Initialization)

写在前面 喜欢我们的内容,可以订阅我们的官方微信公众账号:乐Coding.我们的iOS高级开发QQ群:386572485. 构造过程(Initialization),Swift中的构造器和Objective-C中的构造函数还是有很大不同的.即使Swift中类的构造器和值类型 (枚举和结构体)的构造器也有所不同. 下面我们慢慢看到底有那些不同. 1. 构造器,构造过程包括为实例中的每个属性设置初始值和为其执行必要的准备和初始化任务: 与 Objective-C 中的构造器不同,Swift 的构造器

Java学习之路(五)

1:补充: 使用super也可以调用父类的成员函数  格式 :  super.函数名(); 2:抽象类与抽象函数 抽象函数的定义: 只有函数的定义,没有函数体的函数被称为抽象函数 抽象类的定义: 使用abstract定义的类被称为抽象类 注意: 1:抽象类不能被实例化 2:如果一个类当中包含有抽象函数,那么这个类必须被声明为抽象类 3:如果一个类中没有抽象函数,那么这个类也可以被声明为抽象类 抽象类不能生成对象  却可以有构造函数 如果一个不是抽象的子类继承了抽象类那就必须实现抽象(父)类中的所

oracle学习之路(五)-----oracle数据类型的一般操作

1. 一些常见的运算符 运算符 意义 = 等于 <> , != , ~= , ^= 不等于 < 小于 > 大于 <= 小于或等于 >= 大于或等于 + 加号 - 减号 * 乘号 / 除号 := 赋值号 => 关系号 .. 范围运算 || 字符连接符 IS NULL 是空值 BETWEEN AND 介于两者之间 IN 在一列值中间 AND 逻辑与 OR 逻辑或 NOT 取返,如IS NOT NULL, NOT IN 2.变量赋值 在PL/SQL编程中,变量赋值是一个

rabbitmq学习之路(五)

上一篇讲了消息发送确认,这一次来讲一讲 消息消费确认模式 消息发送确认,确认的是消息发送到交换机和队列的确认,消息消费确认则确认的是消息是否被消费者正常消费掉! 消息的确认模式有三种 AcknowledgeMode.NONE:自动确认 AcknowledgeMode.AUTO:根据情况确认 AcknowledgeMode.MANUAL:手动确认 手动确认是程序员控制度最高的一种模式,消息的自动确认是在消息发送给消费者后就确认了,并删除消息,如果消费者在执行过程中出错,依然会造成消息的丢失.第二种

android开发学习之路——连连看之游戏逻辑(五)

GameService组件则是整个游戏逻辑实现的核心,而且GameService是一个可以复用的业务逻辑类. (一)定义GameService组件接口 根据前面程序对GameService组件的依赖,程序需要GameService组件包含如下方法.   ·start():初始化游戏状态,开始游戏的方法.     ·Piece[][] getPieces():返回表示游戏状态的Piece[][]数组.     ·boolean hasPieces():判断Pieces[][]数组中是否还剩Piec

OpenGL学习之路(五)

1 引子 不知不觉我们已经进入到读书笔记(五)了,我们先对前四次读书笔记做一个总结.前四次读书笔记主要是学习了如何使用OpenGL来绘制几何图形(包括二维几何体和三维几何体),并学习了平移.旋转.缩放坐标变换矩阵的理论推导和实践应用. 这一次读书笔记,我们一起来学习OpenGL中常用的坐标系以及坐标变换.在OpenGL中有几个坐标系,初学者常常被它们搞得晕头转向:为什么需要这些坐标系?各个坐标系有什么作用?……本文就来学习一下这些OpenGL中常用坐标系. 之后来看看投影矩阵的推导,投影变换矩阵

我的算法学习之路

关于 严格来说,本文题目应该是我的数据结构和算法学习之路,但这个写法实在太绕口--况且CS中的算法往往暗指数据结构和算法(例如算法导论指的实际上是数据结构和算法导论),所以我认为本文题目是合理的. 这篇文章讲了什么? 我这些年学习数据结构和算法的总结. 一些不错的算法书籍和教程. 算法的重要性. 初学 第一次接触数据结构是在大二下学期的数据结构课程.然而这门课程并没有让我入门--当时自己正忙于倒卖各种MP3和耳机,对于这些课程根本就不屑一顾--反正最后考试划个重点也能过,于是这门整个计算机专业本

一个女大学生的代码学习之路(二)

首先说一下,写这种文章是由于我在四月四日晚上,在手动搭建自己的第一个ssh项目的时候,遇到了一个配置的问题,怎么解决也弄不好,当时是四号晚上九点,我看了一眼表,我就想两个小时之内,我要是能搞定就算行了,但是其实,我搞到三点才OK(凌晨),那时候已经是五号了,转天是一家子去扫墓的时候,结果我居然以这种一个理由没有去,理由是我太累了么?我只是就是搭了一个架子,就是由于我的包太混乱了,导致不兼容,所以tomcat总也不启动,你可能认为好笑,这么简单一个问题怎么就费这多多时间呢,但是作为一个刚接触三框架