谈到php,相比大家都知道,php没有数据类型的概念,是一种相对c++来说,定义宽松的语言。从事类似php这么高级语言的开发,能够让研发人员真正的从编程的细枝末节中跳出来,真正解放了程序猿,使其更多考虑架构、编程方式方法的问题。真正完整的接触php的开发是从今年年初开始。之前使用php,都是在给客户解决产品问题的过程中。前段时间项目接近尾声,才对php有了比较充分的了解。
一下总结项目开发中遇到的php的问题:
1.使用c++、c语言开发php的扩展
优点:提高执行效率,简化php编程
缺点:开发复杂、维护效率低
2.全程过程中使用闭包
优点:减少命名冲突,简化代码复杂度
缺点:不能缓存变量值,每次都是动态解析
3.empty()方法
empty()判断当var存在,并且是一个非空非零的值时返回FALSE,否则返回TRUE,emtpy 判断 ""(空字符)、0、 0.0、"0"、NULL、false、空数组、声明但没有赋值的变量,以上统一认为都是为空的。在php编程中,有人习惯用 empty来判断一个方法的返回值,但是这样就存在一个误判的问题,比如strpos方法,如果用empty判断是否找到了指定 字符串,那么就会产生误判,因为strpos返回值有可能是0(表示找到了,字符串下标从零开始),所以谨慎使用此方 法。虽然php的类型虽然宽泛,但是不意味着我们编程就应该判断,比如对于函数的返回值建议用 === !== 这种严格匹 配类型的比较符号,函数返回什么就是什么,不可宽泛的比较,否则容易出错
语言的优缺点,在选对开发项目的情况下,其实是不那么明显的,有些项目是可以避免掉缺点的,仅仅使用到了其优点