全面解读php-流程控制
一、PHP遍历数组的三种方式

示例:
$arr = [1, 2, 3 4, 'five' => 5];
1、for ()
for循环只能用于遍历纯索引数组!如果存在关联数组,count统计时会统计两种数组的总个数,使用for循环遍历混合数组,导致数组越界!!
$num = count($arr);
for($i=0;$i<$num;$i++){
echo "{$i}=>{$arr[$i]}<br/>";
}
2、foreach()
可以遍历任何形式的数组,我这里就不举例了,它太常用了。
3、while list()、each()
可以遍历索引数组和关联数组,但是它的缺点是下次使用是需要使用 rest()重置数组指针。
数组使用each()遍历完一遍后,指针使用处于最后一位的下一位;即再用each(),始终返回false;
如果还需使用,需用reset($arr);函数,重置数组指针。
while(list($key,$value) = each($arr)){
echo "{$key}=>{$value}<br>";
}
reset($arr);
二、if ..... elseif....else
在if......elseif......else语句当中,当然中间可能有多个elseif,因为只有一个语句块儿被执行,我们需要 遵循一个原则:将可能性大放在前面
三、switch......case
对于 switch($var) , 我们需要注意的就是:
1、$var只能是 整型,浮点型和字符串。
2、continue语句 在switch 中和break语句的作用相同。
3、如果需要跳出 switch 外的循环,可以使用 continue 2。

本文为袋鼠在学习中的总结,如有转载,请注明出处:https://www.cnblogs.com/chrdai/p/11075204.html
全面解读php-流程控制的更多相关文章
- node核心:异步流程控制
Node.js的异步是整个学习Node.js过程中重中之重. 1)异步流程控制学习重点 2)Api写法:Error-first Callback 和 EventEmitter 3)中流砥柱:Promi ...
- Python 流程控制 超全解析(不可错过)
流程控制 程序执行结构流程 计算机程序在解决某个具体问题时,包括三种情形,即顺序执行所有的语句.选择执行部分的语句和循环执行部分语句,这正好对应着程序设计中的三种程序执行结构流程:顺序结构.选择结构和 ...
- Python基础之:Python中的流程控制
目录 简介 while语句 if 语句 for语句 Break Continue pass 简介 流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太一样 ...
- Chapter05 流程控制(Process Control)
目录 Chapter05 流程控制 5.1 顺序控制 5.2 分支控制 if-else 单分支基本语法: 双分支基础语法: 多分支基础语法 5.3 嵌套分支 5.4 switch分支结构 5.5 Fo ...
- 第10章 Shell编程(4)_流程控制
5. 流程控制 5.1 if语句 (1)格式: 格式1 格式2 多分支if if [ 条件判断式 ];then #程序 else #程序 fi if [ 条件判断式 ] then #程序 else # ...
- Shell命令和流程控制
Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...
- PHP基础知识之流程控制的替代语法
PHP 提供了一些流程控制的替代语法,包括 if,while,for,foreach 和 switch. 替代语法的基本形式是把左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,e ...
- Python黑帽编程2.4 流程控制
Python黑帽编程2.4 流程控制 本节要介绍的是Python编程中和流程控制有关的关键字和相关内容. 2.4.1 if …..else 先上一段代码: #!/usr/bin/python # - ...
- 使用yield进行异步流程控制
现状 目前我们对异步回调的解决方案有这么几种:回调,deferred/promise和事件触发.回调的方式自不必说,需要硬编码调用,而且有可能会出现复杂的嵌套关系,造成"回调黑洞" ...
- [Java入门笔记] Java语言基础(四):流程控制
流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下几种: 顺序结构 顺序结构,顾名思义,是指程序从上往下逐步顺序执行.中间没有任何的判断和跳转. 分支结构 Java提供两种分支结构: ...
随机推荐
- js变量的作用域、变量的提升、函数的提升
变量的作用域在函数之外声明的变量,叫做全局变量,因为它可被当前文档中的任何其他代码所访问.在函数内部声明的变量,叫做局部变量,因为它只能在当前函数的内部访问. ECMAScript 6 之前的 Jav ...
- multipart/form-data请求与文件上传的细节
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...
- Shell编程备份数据库
案例: 在/usr/sbin/建立Shell文件 备份后查看目录: 然后进行crontab任务调度: #每天凌晨两点十分调度一次 * * * /usr/sbin/mysql_db.sh
- Delphi 数组与记录类型
- win7安装xmanager报错error1303、err1317
安装xmanager时出现的一些问题,记录如下. 1.安装xmanager时,提示error1303.如下图,按照百度的办法,创建相应的文件夹后,点击重试. 2.重试后提示err1317,如下图所示. ...
- (转)shell中括号的特殊用法 linux if多条件判断
一. bash [ ] 单双括号 基本要素: Ø [ ] 两个符号左右都要有空格分隔 Ø 内部操作符与操作变量之间要有空格:如 [ “a” = “b” ] Ø 字符串比较中,&g ...
- LocalDatetime 与 mybatis、json的坑
总所周知,localdatetime是jdk8 推出的关于日期计算非常方便地一个类,一旦开始用上就欲罢不能.但是在使用的时候,坑还是蛮多的. 一.mybatis与LocalDatetime 如果直接将 ...
- 集合(三) HashMap
三.Map 先来讲一下Map,Map和Collection完全不是一个系列的,按理说讲完Collection的List,应该接着讲Collection的Set,但是因为Set中很多实现是基于Map来实 ...
- python字典的setdefault的妙用
现在有一个员工字典,类似这样的结构 staff_dic = {"name":"灭霸", "age": 10000, "hobbie ...
- 服务器iis跟server-u 冲突
server-u 一定要配置域才可以监听21端口,不然一直ping 都是无效的.