php流程控制
时间:2020-03-27
本文章向大家介绍php流程控制,主要包括php流程控制使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
流程控制
分支控制
if
echo "1. if"."\n";
$a = 10;
$b = 3;
if ($a > $b){
echo "a大于b"."\n";
}
else
:经常需要在满足某个条件时执行一条语句,而在不满足该条件时执行其他语句。
echo "2. else"."\n";
if ($a > $b){
echo "a大于b"."\n";
}
else{
echo "a不大于b"."\n";
}
elseif
和else if
:两者的效果完全一致,但是如果用冒号来定义if elseif
的条件,那就不能使用else if
。
echo "3. elseif"."\n";
if ($a > $b){
echo "a大于b"."\n";
}
elseif ($a == $b){
echo "a等于b"."\n";
}
else{
echo "a小于b"."\n";
}
//使用冒号的时候,必须得用elseif
if ($a > $b):
echo "a大于b"."\n";
elseif ($a == $b): //此情况下使用else if会报错
echo "a等于b"."\n";
else:
echo "a小于b"."\n";
endif;
循环控制
while
:是PHP
中最简单的循环类型,它和c
语言中的while
表现地一样。
echo "4. while"."\n";
while($a > 0):
echo "$a\t";
$a--;
endwhile;
do-while
:和while
循环非常相似,do-while
是先执行后判断,while
是先判断后执行,相比之下,do-while
至少执行一次。
echo "\n5. do-while\n";
do{
echo "$a\t";
$a++;
}while($a < 10);
echo "\n";
for
:for
循环是PHP
中最复杂的循环结构。
/*
* 样式:
* for(expr1; expr2; expr3){
* statement;
* }
* expr1:在循环开始前无条件执行一次
* expr2:每次循环开始前时执行一次,用于判断该循环是否继续进行
* expr3:每次循环结束后时执行一次
* 上述三个都可以为空,如:
* for(; ; ;){}
* 当expr2为空时,默认为true,可无限循环。
*/
echo "6. for\n";
for ($i = 0; $i < 10; $i++)
{
echo "$i\t";
}
//可以使用: endfor;形式
echo "\n";
for ($i = 0; $i < 10; $i++) :
echo "$i\t";
endfor;
foreach
:提供了遍历数组的简单方式,且仅仅能够用于数组和对象。
/*
*
* 样式1:遍历给定的array_expression数组,每次循环中,当前单元的值被赋给$value并且数组内的指针向前移一步
* foreach (array_expression as $value){
* statement;
* }
* 样式2:同上,不过除了当前单元的键名,也会在每次循环中赋值给$key
* foreach (array_expression as $key => $value){
* statement;
* }
*
* =>由于foreach依赖内部数组指针,在循环中修改其值将可能导致意外的行为。
*/
echo "\n7. foreach\n";
$arr = array(1, 2, 3, 4);
foreach($arr as $value){
echo $value."\t";
}
echo "\n";
foreach($arr as $key=>$value){
echo "key:$key => value:$value\t";
}
break:结束当前for,foreach,while,do-while或switch的结构的执行,跳出该层循环。
continue:跳过该层循环的本次循环,执行下一次循环。
原文地址:https://www.cnblogs.com/jackw1/p/12580909.html
- Vijos P1103 校门外的树【线段树,模拟】
- BZOJ 1061: [Noi2008]志愿者招募【单纯形裸题】
- SQL vs NoSQL:如何选择?
- 线性规划之单纯形法【超详解+图解】
- NodeJS 应用仓库钓鱼
- Codeforces 626D Jerry's Protest(暴力枚举+概率)
- CodeM美团点评编程大赛初赛B轮 黑白树【DFS深搜+暴力】
- Uva 10339 - Watching Watches【数论,暴力】
- Codeforces 626E Simple Skewness(暴力枚举+二分)
- 如何启用Windows 10客户端Hyper-V
- 51Nod 1632 B君的连通(递归,快速幂)
- 51Nod 1046 A^B Mod C(日常复习快速幂)
- EntityFramework 外键值映射
- Codeforces 626C Block Towers(二分)
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- 使用 Forestry 管理基于 GitHub 的图床
- 从零开始搭建 VuePress 静态博客
- 算法菜鸟的烂笔头
- 防火墙(iptables)
- 短视频商城源码,安卓几种弹窗方法
- Automl框架katib浅析
- NAS Network Attached Storage
- es6 随性学习之 字符串 String
- MongoDB内核:副本集选举过程分析
- MongoDB内核:主从同步之源码剖析
- OpenGL ES 帧缓冲区位块传送
- OAuth 2.0 单元测试解决方案
- 「性能提升」扩展 Spring Cache 支持多级缓存
- 如何以源码形式运行Nacos Server
- Spring Boot 2.4 配置文件将加载机制大变化