php面试专题---4、流程控制考点

一、总结

一句话总结:

理解循环内部机制(指针操作),更易于记忆foreach的reset特性,分支结构中理解了switch...case的执行步骤(跳转表)也就不难理解为什么效率高了。

1、请列出3种PHP数组循环操作的语法,并注明各种循环的区别?

使用for循环:只能遍历索引数组
使用foreach循环:可以遍历索引和关联数组,对数组进行reset()操作
使用while、list()、each()组合循环:不对数组进行reset()操作,可以遍历索引和关联数组

索引数据or关联数组:for循环只能遍历索引数组,foreach可以遍历索引和关联数组,联合使用list(),each()和while循环同样可以遍历索引和关联数组。
reset()操作:重置数组指针:while、list()、each()组合不会reset();foreach遍历会对数组进行reset()操作

2、if-else分支结构注意点?

排斥关系:在elseif语句中只能有一个表达式为true,即在elsei语句中只能有一个语句块被执行,多个elseif从句是排斥关系。
小范围放前面:使用elseif语句有一个基本原则,总把优先范围小的条件放在前面处理。

3、switch....case....注意点?

整形、浮点类型或者字符串:和if不同的是,switch后面的控制表达式的数据类型只能是整形、浮点类型或者字符串
continue:语句作用到switch的作用类似于break
continue 2:跳出switch外的循环,可以使用continue 2
跳转表效率高:switch...case会生成跳转表,直接跳转到对应case:如果条件比一个简单的比较要复杂得多或者在一个很多次的循环中,那么用switch语句可能会快一些

4、PHP中如何优化多个if..elseif语句的情况?

1、可能性越大越往前放
2、整形、浮点类型或者字符串判断可以考虑switch...case

二、内容在总结中

 

php面试专题---4、流程控制考点的更多相关文章

  1. php面试专题---5、流程控制考点

    php面试专题---5.流程控制考点 一.总结 一句话总结: 看代码不要先看函数里面的内容,要用的时候再去看:注意静态,注意变量作用域,php中的内置函数需要去归类总结,就是太容易忘记了 1.写出如下 ...

  2. php面试专题---6、正则表达式考点

    php面试专题---6.正则表达式考点 一.总结 一句话总结: 正则匹配步骤:1.先写出一个要匹配的字符串:2.自左向右的顺序使用正则表达式的原子和元字符进行拼接:3.最终加入模式修正符: 1.写出一 ...

  3. 【mysql的编程专题①】流程控制与其他语法

    流程控制与内置函数,一般用在select的field字段上,或者用在函数,存储过程,触发器中; 如果用在select上就会随着query出来的row来隐式迭代; 注释与语句结束符 语句结束符 默认有两 ...

  4. php面试专题---9、会话控制考点

    php面试专题---9.会话控制考点 一.总结 一句话总结: 面向对象.设计模式这些特别好用,需要融会贯通 1.请写出PHP类权限控制修饰符? public.protected.private 2.p ...

  5. php面试专题---8、会话控制考点

    php面试专题---8.会话控制考点 一.总结 一句话总结: 主要是cookie和session的区别,以及用户禁用cookie之后怎么使用session 1.为什么要使用会话控制技术? 因为http ...

  6. php面试笔记(4)-php基础知识-流程控制

    本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而流程控制相关的 ...

  7. php面试专题---20、MySQL的安全性考点

    php面试专题---20.MySQL的安全性考点 一.总结 一句话总结: 还是得多看视频,教程看的浮光掠影,容易get不到重点:比如预处理防sql注入之前是挺熟,后面就忘记了,而且看文章get不到点 ...

  8. php面试专题---19、MySQL高可扩展和高可用考点

    php面试专题---19.MySQL高可扩展和高可用考点 一.总结 一句话总结: 要区别分区和分库分表,分区的话对用户是透明的,分库分表的话需要程序员做点事情,主从数据库同步的话借助的是二进制日志 1 ...

  9. php面试专题---18、MySQL查询优化考点

    php面试专题---18.MySQL查询优化考点 一.总结 一句话总结: 慢查询:查找分析查询速度慢的原因 数据访问:优化查询过程中的数据访问 长难句:优化长难的查询语句 特定类型:优化特定类型的查询 ...

随机推荐

  1. echarts之toolbox-orient

    toolbox是echarts中的工具箱 当orient为'vertical' toolbox: { show : true, orient:'vertical' } 当orient为'horizon ...

  2. 关于外部引用JS,中文乱码的问题

    asp.net 页面默认编码为UTF-8, 如果js嵌套写在asp.net中,不会导致中文乱码,因为他们具有相同的编码 外部引用js由于编码格式与asp.net的编码不同,javascript编码默认 ...

  3. Leetcode 190 Reverse Bits 位运算

    反转二进制 class Solution { public: uint32_t reverseBits(uint32_t n) { uint32_t ans = ; ; i<; ++i,n &g ...

  4. 005--VS C++ 加载位图

    //全局变量 HDC mdc; //--------------------------------------------InitInstance() 函数--------------------- ...

  5. HDU 1715 大菲波数(JAVA, 简单题,大数)

    题目 //BigInteger 和 BigDecimal 是在java.math包中已有的类,前者表示整数,后者表示浮点数 import java.io.*; import java.util.*; ...

  6. Filter设计实现IP地址限制

    示例:创建一个IP过滤Filter,当一个用户发出访问请求的时候,首先通过过滤器进行判断, 如果用户的IP地址被限制,就禁止访问,只有合法的IP才可以继续访问.IP过滤Filter代码如下: IPFi ...

  7. PHP 判断协议是否为HTTPS

    if ($_SERVER['HTTPS'] != "on") { echo "This is not HTTPS"; }else{ echo "Thi ...

  8. Ignatius and the Princess III --undo

    Ignatius and the Princess III Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (J ...

  9. prop解决一个checkbox选中后再次选中失效的问题

    //问题点 初始状态复选框没有全选, 点击全选按钮调用checkAll方法, 实现了全选, 然后点击全不选按钮, 实现了全不选, 然后再次点击全选按钮, 结果却木有全选, 再反复点击木有任何反应. d ...

  10. IDEA配置jdk

    提前安装jdk,配置环境变量 一.配置jdk 1.依次点开File -->Project Structure,点击左侧标签页,点击SDKs 2.点击+号,选SDK 3.按照这个顺序,可以配置多个 ...