厚学网  |  培训首页 > PHP培训头条 > PHP中的小问题分析,天津PHP培训

PHP中的小问题分析,天津PHP培训

该校与厚学网暂未合作,平台不保证课程的真实有效性,如有侵权等争议,请及时与厚学网联系处理

想必有很多同学在日常的开发过程中经常会碰到一些问题,而有些问题往往看起来是那么的简单,只要一说就能明白,可偏偏到了自己使用的时候就遇到了问题,这难道不是件很头疼的事情吗?小编就给大家整理了一些容易出现的问题,如下:

1、使用单引号,以双引号为分隔符,使用函数explode分割字符串,不能正常分割。  

为什么会这样呢?原因是:由于单引号和双引号有区别,在单引号中/”不能被解析,因此,在使用函数explode分割时,如果我们使用的是单引号,就会被当做字符串,而不是换行符,所以不能分割。、

2、正反斜杠导致函数basename使用无效

我们常常使用php函数basename时,从一个包含有指向一个文件的全部路径的字符串中获取文件名,但是由于正反斜杠的原因,我们在使用是会发现函数无法生效,尤其是在windows系统和别的系统之间切换时。原因是basename函数受操作系统的影响,在windows系统中正反斜线都可以用作分隔符,而在其他的操作环境下则只能用斜线,所以为了不出错,小编建议大家尽量用斜线来作为分隔符。

3、小数不能直接比较是否相等

比如 if( 0.5+0.2==0.7 ) 的结果是 false。究其原因是因为,php是基于c语言的,而c语言由于其二进制符点数的表示方式,导致不能准确表示大多数符点数。实际上,几乎所有的编程语言都没能准确的表示小数(符点数),这是一个普遍存在的现象,因为这个是 ieee 754 的缺陷。

4 foreach语句

我们在运用 foreach语句时,需要注意到zui后一个$somel会一直保留到该函数/方式结束,而当使用引用的时候 foreach($somearr as &$somel){ }这是以引用来保存,也就是说后面若有使用同一个名字的变量名,将会把原数据改变(就像一个乱用的c指针)。所以,为了an全起见的话呢,小编建议每个foreach结束之后都要使用unset把这个变量清理掉,尤其是引用的foreach

5switch语句中的case不能当做if来使用

php函数switch……case中,switch 匹配的是case语句的值,而不能把caseif用。同时,switch表达式优先匹配与其值类型一致的case语句,类型不一致的放在后面处理

小编目前就整理这么多,希望能给大家带来帮助!


文中图片素材来源网络,如有侵权请联系删除
在线咨询
全国招生热线